我想扫描 58.49.59.76 这个IP的 9010到9014端口
其中 9010到9013是联通的,9014未开放,IdTelnet1控件在尝试连接58.49.59.76:9014的时候大概要1分多钟.能不能把这个1分钟缩小?
尝试使用多线程,但还是一样(扫描未开放端口的时间依然很长)
分不多,恳求大家赐教!procedure TForm1.BitBtn1Click(Sender: TObject);
var
i:integer;
myconnect:Boolean;
begin
Memo1.Clear;
for i:=9010 to 9014 do
begin
myconnect:=False;
IdTelnet1.Disconnect;
IdTelnet1.ReadTimeout:=300;
IdTelnet1.Host:='58.49.59.76';
IdTelnet1.Port:=i;
try
if idtelnet1.Connected=False then
IdTelnet1.Connect;
except
end;
if myconnect=True then Memo1.Lines.Add('IP: '+idtelnet1.Host+' PORT: '+inttostr(IdTelnet1.Port));
end;
end;procedure TForm1.IdTelnet1Connected(Sender: TObject);
begin
myconnect:=True;
end;
其中 9010到9013是联通的,9014未开放,IdTelnet1控件在尝试连接58.49.59.76:9014的时候大概要1分多钟.能不能把这个1分钟缩小?
尝试使用多线程,但还是一样(扫描未开放端口的时间依然很长)
分不多,恳求大家赐教!procedure TForm1.BitBtn1Click(Sender: TObject);
var
i:integer;
myconnect:Boolean;
begin
Memo1.Clear;
for i:=9010 to 9014 do
begin
myconnect:=False;
IdTelnet1.Disconnect;
IdTelnet1.ReadTimeout:=300;
IdTelnet1.Host:='58.49.59.76';
IdTelnet1.Port:=i;
try
if idtelnet1.Connected=False then
IdTelnet1.Connect;
except
end;
if myconnect=True then Memo1.Lines.Add('IP: '+idtelnet1.Host+' PORT: '+inttostr(IdTelnet1.Port));
end;
end;procedure TForm1.IdTelnet1Connected(Sender: TObject);
begin
myconnect:=True;
end;
IdTelnet1.IOHandler.ConnectTimeout
IdTelnet1.IOHandler.ReadTimeout
IdTelnet1.IOHandler 没有.connecttimeout 这个属性呀?能说详细点吗?IOHandler在对象浏览器中是褐色的