Socket (Senden + Empfangen in einer Schleife)
-
Hallo,
meine asynchrone Verbindung macht folgendes richtig:
Socket verbinden (BeginConnect, EndConnect)
Sende Daten (BeginSend,EndSend)
Empfange Daten (BeginReceive,EndReveice)
Socket schliessen (Shutdown.both, Close())Ich kann allerdings SendeDaten und EmpfangeDaten nicht innerhalb einer Schleife laufen lassen. Beim ersten Schleifendurchlauf ist alles OK, schon beim zweiten kommt eine Fehlermeldung, dass die Remote-Hostverbindung nicht mehr besteht:
Socket verbinden (BeginConnect, EndConnect)
Schleife
Sende Daten (BeginSend,EndSend)
Empfange Daten (BeginReceive,EndReveice)
Schleife Ende
Socket schliessen (Shutdown.both, Close())
WAS MACHE ICH FALSCH??????
-
Servus,
zeig mal bitte den Quellcode.
mfg
Hellsgore
-
Hallo,
ich glaub ich hab den Fehler, was meinst Du dazu?
Der Server (ein Gerät, das mit meinem Rechner angeschlossen ist) wartet auf eine Verbindung von meiner Seite (Rechner ist Client). Wenn er die Verbindung akzeptiert (Arbeitssocket) wird der Empfang und das Senden von Daten 1x durchgeführt und dann auf der Server-Seite der Arbeitssocket und der Server-Socket geschlossen.
So, d.h. der Server schließt über den Arbeitssocket gleichzeitig auch meinen Client-Socket!!!
Lösung ist wohl, solange ich in einer Loop mehrer Anfragen an den Server sende und wieder empfange muss der Arbeitssocket auf dem Server UND mein Socket auf dem Client offen bleiben, oder???