Entwickler-Ecke

Internet / Netzwerk - Clientverbindung bei TCP (Indy) überprüfen


profi90 - Sa 08.07.06 17:00
Titel: Clientverbindung bei TCP (Indy) überprüfen
Hi!
Gibt es einen Befehl, mit dem man überprüfen kann, ob die Verbindung zwischen dem Indy TCP Server und dem Client noch besteht?

Thanks!

Ich habe folgendes versucht:
Delphi-Quellcode:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
with TCPClient do 
  try 
   Connect;   //Hier Fehlermeldung unterdrücken 
   WriteLn('02' + LocalIP); 
   Disconnect; 
  except 
   ShowMessage('Verbindung unterbrochen'); 
end;




Hier müsste meiner meinung nach, wenn die Verbindung bei Connect fehlschlägt das except ausgeführt werden. Dies passiert auch. Aber zuvor erscheint immer noch die Fehlermeldung "Socketfehler ... Verbindung konnte nicht hergestellt werden" oder so irgendwie. Diese Fehlermeldung sollte unterdrückt werden, da ich ja selbst eine Fehlermeldung ("Verbindung unterbrochen") habe.

Könnt ihr mir sagen wie die Fehlermeldung unterdrückt wird oder diese Aktion irgendwie anders durchgeführt werden kann?

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt


Narses - So 09.07.06 23:08

Moin!

Da sich bisher keiner der Indy-Exps geäußert hat, versuch ich mal was:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
with TCPClient do   
  try   
   Connect; // Hier Fehlermeldung unterdrücken --> das ist vermutlich nicht der Fehler
   WriteLn('02' + LocalIP); // sondern das hier!
   Disconnect;   
  except   
   ShowMessage('Verbindung unterbrochen');   
end;

Ich schätze mal, dass du noch keine Verbindung hast, aber du versuchst bereits Daten zu senden.

cu
Narses