Vielen dank! Jetzt gehts!
Juchu , leider noch nit ganz!
Es gibt jedoch noch ein Problem!
Das Programm soll alle Falschen
IP's ( nur zur Kontrolle in Listbox2 auflisten und die richtige in Listbox1);
Das Problem liegt eindeutug daran, das der Befehl Client.open erst nach der Procedure ausgeführt wird!
Die Schleife wird erst komplett ausgeführt , dann die Error Procedure und dann die Connect Procedure!Da Onconnect erst nach der Schleife ausgeführt wird und dort die Variable geändert wird, läuft die Schleife auf jedenfall bis zum ende! Und es wird die letzte
IP in die Listbox geschrieben!
Delphi-Quellcode:
procedure TForm1.BT_tryClick(Sender: TObject);
VAR i:Integer;
Begin
i:=103;
While i<104 do
Begin
Client1.host:='192.168.2.'+inttostr(i);
Try
client1.open;
If client1.Socket.Connected=true then
Begin
Listbox1.Items.Add(client1.Host);
exit;
end;
finally
beep;
end;
i:=i+1;
end;
end;
procedure TForm1.Client1Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
ErrorCode:=0;
Listbox2.Items.Add(Client1.Host);
end;
Ich habe auch schon versucht die For-Schleife durch eine While-Schleife zu erstzen, aber der Effekt ist der Gleiche!
Es ist zum verrückt werden,
nun funktioniert der Scan aber ich kann die richtige
IP nit rausfiltern!