在Delphi里面,如何才能知道和一个IP地址之间是通畅的 如何能用代码实现检测本机和一个IP地址是通畅的。比如 是否能ping 通 www.sohu.com 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 安装第三方组件包:Indy,并使用TIdIcmpClient: IdIcmpClient1.Host:= 'www.sohu.com'; try IdIcmpClient1.Ping(); except on e: exception do ShowMessage('与主机 www.sohu.com 的连接失败,请联系网管。'); end; usesIdBaseComponent, IdComponent, IdRawBase, IdRawClient, IdIcmpClient;function IsOnline(host:string):boolean;varIcmpClient:TIdIcmpClient;beginIcmpClient:=TIdIcmpClient.Create(nil);IcmpClient.BufferSize:=8192;IcmpClient.Port:=0;IcmpClient.Protocol:=1;IcmpClient.ReceiveTimeout:=5000;IcmpClient.Host:=host;try IcmpClient.Ping; result:=true; except result:=false; end;IcmpClient.Free;end;procedure TForm1.Button1Click(Sender: TObject);beginif isOnline('www.sohu.com') then showmessage('在线') else ShowMessage('不在线');end; 这个办法达不到我的效果,只要输入任何一个IP地址的格式 比如 www.weoiurwoieurewurewurowuerouewo.com 用上面的办法返回的结构都是true 除非输入数字 比如112等才会返回false 而我想要的效果是我能否ping 通一个IP地址,比如我输入 www.sohu12345678999.com 就应该返回false 请高手指点 在Indy组件中有域名转IP的转换应用.查一下 两个表查询问题 select *.as 问题 如何解决数据库操作的COM出现com surrogate错误C0000005,导致假死 还是加载图片的问题 日期应该如何加、减 【求助】如何实现Delphi与Asp之间的变量互传? 如何使EDIT框填写的时候只能写入数字呢? 请问如何用delphi写一个刻录程序,有没有好的控件或例子,可以再加分 TreeView问题。 在Form里如何重新定义一个mousedown事件覆盖TControl的Mousedown 创建相同窗体 VisualStudio环境里有没有delphi呢?
try
IdIcmpClient1.Ping();
except
on e: exception do
ShowMessage('与主机 www.sohu.com 的连接失败,请联系网管。');
end;
IdBaseComponent, IdComponent, IdRawBase,
IdRawClient, IdIcmpClient;
function IsOnline(host:string):boolean;
var
IcmpClient:TIdIcmpClient;
begin
IcmpClient:=TIdIcmpClient.Create(nil);
IcmpClient.BufferSize:=8192;
IcmpClient.Port:=0;
IcmpClient.Protocol:=1;
IcmpClient.ReceiveTimeout:=5000;
IcmpClient.Host:=host;
try
IcmpClient.Ping;
result:=true;
except
result:=false;
end;
IcmpClient.Free;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
if isOnline('www.sohu.com') then
showmessage('在线') else
ShowMessage('不在线');
end;