Moin!
Zitat von
delphman:
Aber beim Client-Programm schick ich ja auch im ClientConnect eine Nachricht zum Server.
Die soll ja dann halt im Server auch bei ClientConnect eben lesen.
Schicken kannst du Nachrichten wann du willst, Hauptsache der Socket existiert. Wenn du im OnClientConnect was sendest, dann kannst du es erst im OnClientRead auslesen - und dieses Event kommt immer nach dem OnClientConnect. Das du jetzt schon was im OnClientConnect auslesen kannst bei deinem Server liegt in der Tat daran das du es im lokalen LAN benutzt und es daher schnell ist. Der von dir gesendete String löst so oder so ein OnClientRead aus und daher ist es nicht gut im OnClientConnect des Servers zu versuchen den Text schon auszulesen.
Du musst dich von der Vorstellung trennen, beim Connect des Clients dessen NickName zu erfahren - das geht nur im nachhinein. Du musst dir in deinem Programm eine solche Struktur vorhalten, das du den Nicknamen er später erfährst - es geht nicht anders. In meinem oben verlinkten Chat wird das ganze zwar über Streams gelöst aber trotzdem wird dort der NickName auch erst später übermittelt. Trotzdem ist es noch schnell genug als das es nicht auffällt.
MfG
Muetze1