Hallo,
einen genauen Aufbau kann ich leider in C++ nicht geben, da ich nur in C# programmiere und eher wenig Kenntnisse in C++ habe. Die Sprachen sind zwar fast identisch vom Syntex, aber es gibt doch Unterschiede.
Ich gehe mal davon aus, dass du das .Net Framework benutzen möchtest, was ich auch empfehlen würde.
Weiterhin solltest du einen „Server“ programmieren, welcher jede eingehende Verbindung annimmt und halt über diesen Server alle Daten untereinander austauscht.
Dieses Prinzip ist heute schon Gang und Gebe.
Beim Server benutzt du einen „System.Net.Sockets.NetworkStream“ um deine Daten zu senden und zu empfangen. Das sollte die leichteste Methode sein und sie kann beides (senden/empfangen) von bytearrays.
Am besten guckst du dir das hier mal an:
http://msdn.microsoft.com/de-de/library/system.net.s…
und den Networkstream koppelst du mit einem „System.Net.Sockets.TcpListener“, welcher die eingehenden Verbindungen annehmen kann.
Da guckst du dir am besten das hier an:
http://msdn.microsoft.com/de-de/library/system.net.s…
Das war auch schon das grundprinzip eines Servers.
Das Gegenstück, der Client, ist ähnlich aufgebaut, abgesehen davon, das du einen „System.Net.Sockets.TcpClient“, statt einem „System.Net.Sockets.TcpListener“ benutzt, um eine Verbindung zu beginnen.
Da guckst du dir am besten mal das hier an:
http://msdn.microsoft.com/de-de/library/system.net.s…
Also im Überblick brauchst du am Server folgendes:
- Networkstream
- TcpListener
Und beim Client folgendes:
Den Networkstream und den TcpClient/TcpListener kannst du im übrigen mit „Networkstream = TcpListener/TcpClient.GetStream()“ koppeln.
Und schon kann der TcpListener/TcpClient mit dem Stream arbeiten.
Wie gesagt, am besten guckst du dir mal die drei Sachen aus dem msdn an und probierst mal ein bischen herum.
Wenn du das Grundprinzip gelernt hast und dir der Networkstream nicht wirklich zusagt, dann kannst du dir ja mal einen „eigenen“ Stream fürs Empfangen und Senden von Daten erstellen.
Dies geht auch relativ einfach, sollte aber erst nach dem der Networkstream verstanden wurde benutzt werden.
Dazu guck dir am besten mal die Komponenten „System.IO.BinaryReader“ und „System.IO.BinaryWriter“ an.
http://msdn.microsoft.com/en-us/library/system.io.bi…
http://msdn.microsoft.com/en-us/library/system.io.bi…
Aber wie gesagt, der Einfachkeit halber erstmal mit dem Networkstream der System.Net.Socket-Klasse versuchen.
Tutorials kenne ich leider keine in C++, aber meist bringt das Msdn ja schon fast alles nahe und einen Vorteil vom Msdn ist, dass dort auch wirklich „richtiges Programmieren“ gezeigt wird und nicht ein 0815-Coding, welches viele Lücken lässt.
Ich wünsche viel Spaß und viel Erfolg.
Eltarion