AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TIdTCPclient hängt sich auf
Thema durchsuchen
Ansicht
Themen-Optionen

TIdTCPclient hängt sich auf

Ein Thema von CReber · begonnen am 18. Dez 2004 · letzter Beitrag vom 20. Dez 2004
 
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#4

Re: TIdTCPclient hängt sich auf

  Alt 19. Dez 2004, 12:07
Zitat:
Ich habe die Lösung gefunden ! Dank dem Timeout von 500 ms ist das jedes mal abgestürzt... Wenn ich da ein Delay von >500 ms einbaue funktioniert es !

Ich habe nämlich grad das gleiche Problem, aber es geht trotzdem nicht ...

Bei folgendem Sourcecode bleibt der Scanner einfach irgendwo stehen (so bei 15 oder so ...) und macht nicht weiter ...
Delphi-Quellcode:
  TScanner = class (TThread)
  public
    ShowStatus: Boolean;
    procedure Execute; override;
  private
    PortOpen: Boolean;
    ScanHost: Byte;
    procedure VCL_State;
    procedure VCL_Add;
  end;

var
  Form1: TForm1;
  Host: Byte = 0;

implementation

{$R *.dfm}

procedure TScanner.Execute;
var
 TCPClient: TIdTCPClient;
begin
 TCPClient := TIdTCPClient.Create(nil);

 while (Host < 254) AND (not Terminated) do
 begin
  inc (Host);
  ScanHost := Host;
  if ShowStatus then synchronize (VCL_State);
  TCPClient.Host := '192.168.0.' + IntToStr (ScanHost);
  TCPClient.Port := 80;

  try
   TCPClient.Connect(1000);
   PortOpen := TRUE;
  except
    PortOpen := FALSE;
  end;
  if TCPClient.Connected then TCPClient.Disconnect;
  synchronize (VCL_Add);
 end;
end;

procedure TScanner.VCL_State;
begin
 Form1.ProgressBar1.StepIt;
 Form1.Label2.Caption := IntToStr(ScanHost);
end;

procedure TScanner.VCL_Add;
begin
 if PortOpen then Form1.ListBox1.Items.Add('192.168.0.' + inttostr (ScanHost))
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 with TScanner.Create(TRUE) do
 begin
  FreeOnTerminate := TRUE;
  ShowStatus := TRUE;
  Resume;
 end;
end;
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13: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