![]() |
Probleme mit INdy-TCP-Server nach "Fehlstart"
Hallo Leute,
ich versuche einen Indy-TCPserver zu starten, weis aber noch nicht genau welcher Port frei ist. Also gebe ich mir einen Werte-Bereich (z.B. 50000-50010) vor und will es durch ausprobieren rauskriegen. Also im Klartext versuche ich erst mal den server mti Port 50000 zu starten wenn's dann nicht geht eben mit 50001 usw.. Die Sache hat nur einen Haken. Wenn einer der Portnummern blockiert ist und ich es einmal vergeblich versucht habe kriege ich auch ne Exception wenn ich den Defaultport auf einen freien wert setze und versuche den Server aktiv zu schalten. Hier mal den Code wie ich's probiert habe.
Delphi-Quellcode:
Auf meinem Rechner sind Port 50000 durch nen Dienst blockiert und 50001 ist frei.Ich kriege aber weder 50000 noch 50001 so auf. Bei 50001 kriege ich auch als Exception das der Port nicht frei ist.
procedure TForm1.Button1Click(Sender: TObject);
begin try IdTCPServer1.DefaultPort := 50000; IdTCPServer1.Active := TRUE; MessageDlg('50000 offen', mtInformation,[mbOK],0); exit; except MessageDlg('50000 nicht offen', mtInformation,[mbOK],0); IdTCPServer1.Active := FALSE; end; try IdTCPServer1.DefaultPort := 50001; IdTCPServer1.Active := TRUE; MessageDlg('50001 offen', mtInformation,[mbOK],0); exit; except MessageDlg('50001 nicht offen', mtInformation,[mbOK],0); end; end; Kennt da irgendjemand ne Lösung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz