功能
跨平台检测网络连接状态
环境
主要代码
uses IdTCPClient;
function CheckInternet(AHost:string='baidu.com';Aport:integer=80):Boolean;
var
CIdtcpclient:TIdtcpclient;
begin
Result:=False;
try
try
CIdtcpclient:= TIdtcpclient.Create(nil);
CIdtcpclient.ReadTimeout :=2000;
CIdtcpclient.ConnectTimeout :=2000;
CIdtcpclient.Port := Aport;
CIdtcpclient.Host := AHost;
CIdtcpclient.Connect;
CIdtcpclient.Disconnect;
Result:=True;
except
on e:Exception do
begin
Result:=False;
end;
end;
finally
CIdtcpclient.DisposeOf;
CIdtcpclient:=nil;
end;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
if CheckInternet then
showmessage('网络已连接')
else
showmessage('网络未连接');
end;