Hallo an alle da draußen
ich habe ein kleines Problem mittels der Indy Ping Kompo, und zwar habe ich das eigendliche Pingen in eine
Thread ausgelagert, da mein Programm in einen bestimmten Zeit Intervall alle Rechner im Netzwerk anpingen soll.
Das Pingen funktioniert soweit ganz gut.
Doch wenn ich einen Rechner anpinge der offline ist, geht die Procedure in eine Exception und dadurch friert
mein Programm für ca 1-2 Sekunden ein. habe schon alles versucht, bin langsam am verzweifeln.
Thread Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27:
| type
TMyPing = class(TThread)
private
protected
procedure Execute; override;
public
end;
implementation
procedure TMyPing.Execute;
var
i: Integer;
begin
frmNachrichten.IdIcmpClient1.Host := strName;
for i := 1 to 1 do
begin
frmNachrichten.AntiFreeze.;
try
frmNachrichten.IdIcmpClient1.Ping;
frmNachrichten.ListView1.Items.Item[intHostNr].ImageIndex:=1;
except;
frmNachrichten.ListView1.Items.Item[intHostNr].ImageIndex:=0;
end;
frmNachrichten.AntiFreeze.Process;
end; |
Was mach ich nur verkehrt
Bin über jeden Tip sehr dankbar
Moderiert von
Narses: Code- durch Delphi-Tags ersetzt