Client- und ServerSocket
-
ps: wie geht das XD
-
hab ich eigentlich schon
Das würde ich so nicht sagen, aber
warum in einem Memo und nicht sinvollerweise in einer Listbox? Oder wer soll die User wozu editieren?
Des Weiteren wird keiner die knowledgsbase übersetzen, das ändert sich nicht von einem Tag auf den anderen
-
Hallo
ich vermute NoobieBobbie meint auf dem Client eine Übersicht der eingeloggten User.
Dafür gibt es verschiedene Möglichkeiten, am sinnvollsten ist es, wenn der Server über ein Kommando die Liste an den Client schickt.
Der Server muß ja schließlich wissen, wieviele Clients angemeldet sind und mit welchen Nicks die laufen.bis bald
akari
-
Christian211 schrieb:
hab ich eigentlich schon
Das würde ich so nicht sagen, aber
warum in einem Memo und nicht sinvollerweise in einer Listbox? Oder wer soll die User wozu editieren?
Des Weiteren wird keiner die knowledgsbase übersetzen, das ändert sich nicht von einem Tag auf den anderen
von mir aus auch listbox. memo würde ich auf readonly = true setzen.
akari schrieb:
Hallo
ich vermute NoobieBobbie meint auf dem Client eine Übersicht der eingeloggten User.
Dafür gibt es verschiedene Möglichkeiten, am sinnvollsten ist es, wenn der Server über ein Kommando die Liste an den Client schickt.
Der Server muß ja schließlich wissen, wieviele Clients angemeldet sind und mit welchen Nicks die laufen.bis bald
akariGenau so meine ich das. Aber ich weiß nicht wie ich das machen soll.
Wenn beim Clienten OnRead ausgeführt wird wird ja der bekommene Text ausgelesen. Aber so wird ja schon der 'Chattext' gelesen wie kann ich dann den Clienten von Chattext und Userliste unterscheiden lassen.
-
Hallo
indem du wenn du die Benutzerliste verschickst, ein Schlüsselwort davorschreibst, auf das du jede einkommende Nachticht mit den gewohnten AnsiString-Methoden überprüfst. Zum Beispiel USERLIST: oder so.
bis bald
akari
-
Ja stimmt. danke
Mir ist noch was eingefallen: Wie kann ich dem Server beibringen wie die user heißen? Hoffe kann man verstehen
-
In dem der Client sich beim Server bei der Anmeldung mit einen Namen meldet und der Server diesen zu diesem Client in einer Liste speichert.
-
Wie genau soll das gehen? Wie der Name geschickt und gespeichert wird ist klar.
Aber wie mache ich das das der Server weiß wann der jenige sich ausloggt. Also wie kann man den Namen einem Clienten zuweisen. Gibts dafür eine methode? danke
-
Hallo
dazu verwendest du den Event TServerSocket::OnClientDisconnect
Alles was du dir merken must, ist zu welchem Socket welcher Loginname gehört. Dazu passt am besten eine std::map<TCustomWinSocket, AnsiString>.
Beim anmelden eines neuen Clients wird ein neuer Eintrag hinzugefügt, aus der Map kannst du dann deine Benutzerliste erstellen und bei einem Disconnect kannst du einfach den entsprechenden Einträg wieder löschen.bis bald
akari
-
O.o
das war mir jetzt zu hoch sorry

-
Hallo
Kernpunkte sind nur zwei Sachen
- der Event TServerSocket::OnClientDisconnect
- die Zuordnung von einem Socket-Objekt zu dem richtigen Login-Nickwie du das machst ist deine Wahl, es gibt auch einfachere wege.
bis bald
akari
-
akari schrieb:
- die Zuordnung von einem Socket-Objekt zu dem richtigen Login-Nick
Das ist das wo ich nicht weiß wie es geht. Könnteste mir vielleicht auch einen der einfachen Wege zeigen? ^^ danke
-
nix? ^^
-
Hallo
ich habe dir genug Hinweise gegeben. EIn bißchen selber denken, nachschlagen und programmieren must du auch mal.
bis bald
akari