function TForm1.IPConnect(IP:String):Boolean;
var
Ping:TPing;
begin
Result:=False;
{连接主机}
DataModule1.IDTCPClient1.Host := IP ;
{端口}
DataModule1.IDTCPClient1.Port := 8341;
{连接超时设置}
DataModule1.IdTCPClient1.ReadTimeout:=5000; if DataModule1.IDTCPClient1.Connected then
begin
DataModule1.IDTCPClient1.Disconnect;
end
else
try
Ping:=TPing.Create;
if Ping.PingHost(IP)=True then
begin
DataModule1.IDTCPClient1.Connect; //运行到此处就弹出 Read TimeOut 消息框,不知道怎么回事.
Result:=True;
end
else
begin
Delay(50);
Result:=False;
end;
Ping.Destroy ;
except
on E:Exception DO
begin
Result:=False;
end;
end;
end;网络设备能PING通的情况下,但不能进行会话连接,此时会弹出提示框"Read TimeOut",请问这个问题如何解决,另外就是如何判断在不能进行会话连接时,断开这个会话连接,函数返回一个布尔值.
var
Ping:TPing;
begin
Result:=False;
{连接主机}
DataModule1.IDTCPClient1.Host := IP ;
{端口}
DataModule1.IDTCPClient1.Port := 8341;
{连接超时设置}
DataModule1.IdTCPClient1.ReadTimeout:=5000; if DataModule1.IDTCPClient1.Connected then
begin
DataModule1.IDTCPClient1.Disconnect;
end
else
try
Ping:=TPing.Create;
if Ping.PingHost(IP)=True then
begin
DataModule1.IDTCPClient1.Connect; //运行到此处就弹出 Read TimeOut 消息框,不知道怎么回事.
Result:=True;
end
else
begin
Delay(50);
Result:=False;
end;
Ping.Destroy ;
except
on E:Exception DO
begin
Result:=False;
end;
end;
end;网络设备能PING通的情况下,但不能进行会话连接,此时会弹出提示框"Read TimeOut",请问这个问题如何解决,另外就是如何判断在不能进行会话连接时,断开这个会话连接,函数返回一个布尔值.
解决方案 »
- WebBrowser与MSHTML实现点击操作,与自己鼠标点击有差异,求解
- MONEY求购一财务软件源码
- 远程服务器的的scktsrvr.exe已运行了.可是我为什么不能连接.请高手指教.
- 300分跪求手机短信发送接收编程方法!急!!!!
- DELPHI下查找ACCESS下的备注类型问题
- 为什么这个分组统计的问题总是解决不了?----急!!!求救!!!
- 新作发表Effective Delphi 条款1:不管怎么样,请让你的Project至少user一次SysUtils.pas单元
- ★★★★●●■■用delphi的朋友们, 留下QQ!?◇◎●☆★★
- 怎么实现如下功能:点击一个菜单项,跳出quickrep的打印预览窗口,而没有放置quickrep的那个窗体的出现?????
- delphi访问db2建立的ODBC数据源无法得到相应的记录
- 请帮忙推荐一款好的指纹考勤机(开发包有delphi示例)
- 程序窗口没有获得焦点,是否可以检测到按键的值呢?
把这段注释后,运行看一下
为什么用ping?
5000非常大了,除非你开了200线程的bt下载,否则不会引起timerout