有两种判断方式:
1:
function CheckOffline:boolean;
var
ConnectState, StateSize:DWORD;
begin
ConnectState := 0;
StateSize := SizeOf(ConnectState);
result := false;
if InternetQueryOption(nil, INTERNET_OPTION_CONNECTED_STATE, @ConnectState, StateSize)then
if (ConnectState and INTERNET_STATE_DISCONNECTED)<>2 then
result := true;
end;
2:
function CheckOffline:boolean;
var
dwFlags: DWORD;
begin
dwFlags := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN + INTERNET_CONNECTION_PROXY ;
result := InternetGetConnectedState(@dwFlags, 0);
end;