Server + Client Problem

Seppi123

Erfahrenes Mitglied
Ich habe von einem Tutorials Hier das Tutoral

ein Onlinegame (habe es bissln umgeschrieben) und zwar zu meinem Problem:

Der Server soll an den Client etwas senden und zwar:

- Neuer User joint
- Wird ja logischerweise an den Server geschickt ^^ (da steht SPIELERNAME has joint)
- Der Server soll beim Clienten die ListView1 editieren (undzwar 1 Spalte namens Player (da soll dann alle Spieler die online sind rein)

Mein Problem ist:

Alle User in eine Variable zu schreiben
Danach durch TCP (-Sockets) diese Variable zu versenden
und dann halt noch dem ListView1 hinzufügen

Für das hinzufügen wollte ich folgendes verwenden:

Code:
Player.Add(ListView1.Items)

Dabei ist Player die Variable, die alle User,die online sind, speichert

Dann zu einer neuen Frage:

Wie lösche ich diese Einträge wieder wenn ein User disconnectet?
Auf dem Server steht dann: SPIELERNAME has left

Danke für folgende Antworten :)
 
Wo genau hängts denn jetzt?
Weißt du nicht wie du die User in eine Variable schreibst?
Weißt du nicht wie man mit Sockets arbeitet?

Grundsätzlich kannst du bei beiden Problemen zwei Wege einschlagen.
Entweder du lässt den Server die Daten sammeln und an die Clients verteilen (push).
Oder du lässt die Clients in regelmäßigen Intervallen den Server fragen ob es etwas neues gibt (pull).
 
Naja mit Sockets habe ich erst angefangen und weiß daher nicht wie ich (will dann das bei neuem User der Server an Clienten diesen Usernamen schickt) dies realisieren soll :) wenn du gute Tipps oder Tutorials hast dann wäre ich dir echt dankbar =)
 
Tutorials zur Socket-Programmierung gibts wie Sand am Meer ;)
Google: vb.net socket tutorial

und weiß daher nicht wie ich (will dann das bei neuem User der Server an Clienten diesen Usernamen schickt) dies realisieren soll
Im Prinzip musst du dafür nur die clients in den Listen-mode ( Socket.Listen() ) versetzen.
Wenn der Server dann etwas neues für die clients hat baut er eine Verbindung zu selbigen auf ( Socket.Connect() )
Danach folgt die Übertragung der Daten:
Am client verwendest du dafür z.B. die Methode Receive() ( synchron ) oder wenn es asynchron sein soll z.B. die Methode BeginReceive().
Am server nimmst du dann das entsprechende pendant (sync. oder async.) Send() bzw. BeginSend().

Ich hoffe das reicht erst mal um die Sache ein bischen ins rollen zu bringen.
 

Neue Beiträge

Zurück