Sende mal einen Zeilenumbruch ("\r\n") nach dem Welt.
Und ich empfehle dir mal die ganzen "Magic-Numbers" in deinem Code auf
Konstanten/Variablen mit passendem Namen abzubilden..
Vielleicht wartet die Receive-Routine nicht darauf, dass 20 Zeichen
empfangen wurden, sondern kehrt nach ein paar Datenpaketen - dem "Hallo"
- zurück? (So ist es zumindest mit recv in C, ob das in C# auch so ist
weiß ich nicht) Vermutlich solltest du Receive öfters aufrufen, am
besten in einer Schleife, denn im worst case könnte jedes Zeichen
einzeln ankommen.
Hallo,
es soll erst Hallo und dann Welt gesendet werden, bzw. Mein Problem ist
dass ich nicht mehrere Wörter senden kann, wenn ich den Client neu
starte kommt halt wieder Hallo an.
@ Regelmeister
In Deinem C#-Code wird der Socket wieder geschlossen, nachdem ein Wort
empfangen und ausgegeben wurde. Ändere die Scheife so ab, dass der neue
Socket vor der while(true) "accepted" wird, und mach das s.Close() weg.
MFG Mark