DBO Geschrieben 16. November 2005 Teilen Geschrieben 16. November 2005 Hallo, ich habe folgendes Problem. Ich habe eine kleine Server Anwendung geschrieben. Die Server Anwendung wartet in einer eigenen Methode auf neu ankommende Verbindungen. Für jede neue Verbindung wird dann mittels der Methode AcceptSocket() der TcpListener Klasse ein neues Socket Objekt erstellt. Für dieses neue erstellte Objekt möchte ich dann die Keep Alive eigenschaft setzen. Dies tue ich mittels folgender Codezeile: clientSocket.SetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.KeepAlive, 1); Nun zu meinen Problem: Allgemein gilt für meinen Server folgendes: Client sendet Befehl an Server. Server führt Befehl aus und antwortet. Von sich aus sendet der Server nie Daten an den Client Situation a: Die Verbindung bricht zusammen(Kabel ziehen) kurz nachdem der Server einen Befehl von Client empfangen hat. -> Server versucht antwort Daten zu senden. Dies scheint zunächst zu geschehen. Allerdings kommt nach ca. 1 Min eine Exception das Verbindung geschlossen wurde -> Alles ok. Situation b: Kabel wird gezogen, als Server gerade keinen Befehl verarbeitet. ->Hier liegt das Problem: Normal erwarte ich das auch hier eine Exception kommt, passiert aber leider nicht!! Kann mir hier jmd. weiterhelfen? Mache ich beim Setzen der Keep Alive funktion was falsch?? Vielen Dank für eure Hilfe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DBO Geschrieben 16. November 2005 Autor Teilen Geschrieben 16. November 2005 Hallo, ich habe das Problem inzwischen gelöst. Zur Abwechslung war mal meine Programmierung nicht schuld, sondern 2 Registry Einträge die unter Windows 2000 gesetzt werden müssen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigredeyes Geschrieben 17. November 2005 Teilen Geschrieben 17. November 2005 na dann sag doch noch welche! bigredeyes Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DBO Geschrieben 17. November 2005 Autor Teilen Geschrieben 17. November 2005 Oh, ups glatt vergessen:floet: Also die beiden Registry Keys unter Windows 2000 sind: KeepAliveInterval und KeepAliveTime. Der Link zur entsprechenden Dokumentation von Microsoft ist: TCP/IP and NBT configuration parameters for Windows XP (Dokumentation ist zwar für Win Xp, die beiden oben genannten Parameter gelten aber analog für Win 2000.) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.