Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IdTCPClient.Connect in Thread (https://www.delphipraxis.net/143308-idtcpclient-connect-thread.html)

schwa226 13. Nov 2009 07:27


IdTCPClient.Connect in Thread
 
Hallo,

ich habe hier ein kleines Problem. Und zwar will ich in einen thread auf einen Server Connecten. Wenn der Server nun aber nicht verfügbar ist kann ich den Fehler bei Connect nicht abfangen. Delphi Meldet mir noch das der socket nicht zur Verfügung steht, aber der Thread beendet sich dann sofort.
eigentlich sollte der Thread ja weiterlaufen und immer wieder versuchen zu den Server zu connecten:

Ein Try/Except usw hilft leider nichts.

Es ist Indy 10.

Delphi-Quellcode:
procedure TTCPClient.Execute;
var
  ReceivedMessage : String;
begin
  { Thread-Code hier einfügen }

  //init TCP Client:
  IdTCPClient := TIdTCPClient.Create(nil);

  if Assigned(IdTCPClient) then
  begin
    IdTCPClient.Port := fPort;
    IdTCPClient.Host := fHostName;
    IdTCPClient.ReadTimeout := fReadTimeout;

    while not Terminated do
    begin

      if IdTCPClient.Connected then begin
        IdTCPClient.IOHandler.WriteLn('Client ist schon verbunden');
      end
      else begin

          IdTCPClient.ConnectTimeout := 1000;
          IdTCPClient.Connect;      -->> hier fehler weil Server nicht gestartet. Wie abfangen?
        if IdTCPClient.Connected then
          IdTCPClient.IOHandler.WriteLn('Client hat sich jetzt verbunden.');
      end;

      if IdTCPClient.Connected then
      begin

        repeat
            //do code stuff here
        until (Not IdTCPClient.Connected) Or Terminated;

      end;
    end;
  end;
end;

schwa226 13. Nov 2009 08:11

Re: IdTCPClient.Connect in Thread
 
Hat sich erledigt...

Habe Optimierung ausgeschalten und nun geht Debug+Breakpoint und Try/Except.. :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz