Socket Connections

sven_raven

Gesperrt
Der letzte Thread von DanielKobzan hat mich auf die Idee gebracht einen IRC Client zu basteln! In PHP habe ich das schon geschafft und nu wollte ich gerne wissen wie ich sowas in C++ verwirkliche...
Wichtig ist: Ich möchte den Client als Konsolenanwendungschreiben.
Und zwar so dass das keine Windows anwendung wird. D.h. ich möchte eigentlich auf die windows.h verzichten!
Sowas muss doch auch nur mit C++ und den nicht Windows Bibliotheken zu schaffen sein.
Ich brauche halt eine Funktion die
fsockopen($server, $port, &$errstr, &$errno);
aus PHP ersetzt.
Jemand ideen?

Der Client soll sich erstma darauf beschränken zu einem IRC Server zu connecten. Alles andere bekomme ich schon hin.
 
Naja hast dir fast ja schon die Antwort selber gegeben :D

Schau dir fallst du MFC nutzt CAsynchSocket (so oder so aehnlich) an.
Oder schau falls du Builder nutzt unter Socket

Help des Builders :
"Add a TClientSocket object to a form or data module to turn an application into a TCP/IP client. TClientSocket specifies a desired connection to a TCP/IP server, manages the connection when it is open, and terminates the connection when the application is through.

Note: See the CHAT demo for an example of how to use TClientSocket."
 
Du musst praktisch entweder WinSock -> WinAPI oder eine Alternative Socket-Library eines Drittanbieters verwenden solltest du nicht eine eigenen schreiben wollen.
MFC & VCL basieren ebenfalls auf der WinAPI und fügen für ne Konsolenanwendung noch mehr Overhead hinzu.
 
natuerlich nicht

du kannst c++ sowohl auf mac auf win auf linux / unix schreiben aber fuer alle gleichzeitig zu schreiben ... nope
in dem fall waehre java geeignet.
 
Man KANN C++ Plattfromabhängig schreiben, und die WinSock-API ist meines Wissen praktisch bleich mit berkley sockets -> UNIX, also sind maximal 2-3 Präprozessordirektiven (mehr Probleme wirst du soweiso mit Multithreading bekommen... und Java ist auch nicht soo plattformunabhängig wie's heißt, dafür ist SWING aber extrem langsam)
 
Original geschrieben von Xeragon
Man KANN C++ Plattfromabhängig schreiben

Jo wenn mann eine bedienung haben will die nur auf der konsole basiert sicher. Sobald du nur eine WinApi Funktion oder eine der anderen OS's ists vorbei.

Original geschrieben von Xeragon

... und Java ist auch nicht soo plattformunabhängig wie's heißt, dafür ist SWING aber extrem langsam)

Wenn mann nicht son bullshit wie Visual J++ nimmt doch :)
 
Die API hat ja nicht unbedingt mit der Programmiersprache zu tun, wenn du in Java/C# sonstwo auf die WinAPI zugreifst is es genauso wenig protierbar.
Wenn du hingegen Bibliotheken verwendest, die auf allen notwenigen Plattformen verfügbar sind (darunter könnte auch eine sein die WinAPI bzw. das X-Windows System wrappt) wird's auf allen funktionieren...
und: SWING ist definitiv langsam... egal welcher Compiler
 

Neue Beiträge

Zurück