关于firemonkey:检测Delphi中的互联网访问

Detect internet access in Delphi

我的网络共享应用程序有时无法访问互联网。在这些情况下,Windows不会询问该应用程序是否具有使用Internet的权限。我的应用程序不会产生任何错误,但当然不会出现问题。

如何测试我的Delphi应用程序是否可以访问足以进行网络共享的互联网?


以下代码应在所有平台上均适用:

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
uses IdTCPClient;

function CheckInternet : Boolean;

var TCPClient : TIdTCPClient;

begin
  TCPClient := TIdTCPClient.Create (NIL);

  try
    try
      TCPClient.ReadTimeout := 2000;
      TCPClient.ConnectTimeout := 2000;
      TCPClient.Port := 80;
      TCPClient.Host := 'google.com';
      TCPClient.Connect;
      TCPClient.Disconnect;
      Result := true;

      except
        Result := false;
      end; { try / except }

    finally
      TCPClient.Free;
    end; { try / finally }
end;

来源:www.fmxexpress.com

可在www.delphiworlds.com上找到用于检查移动设备上的Internet连接的库