Ребята всем привет
дело такое программа при запуске должен проверить имеет ли прога доступ к определенному серверу или нет
дело в том что когда доступ имеется то все ок
а когда доступа нету программа зависает на несколько секунд а потом выдает сообщение что сервер не доступен
как избавить его от зависания?
Код:
const
INTERNET_CONNECTION_MODEM = 1;
INTERNET_CONNECTION_LAN = 2;
INTERNET_CONNECTION_PROXY = 4;
INTERNET_CONNECTION_MODEM_BUSY = 8;
var
dwConnectionTypes: DWORD;
iTime: integer;
begin
dwConnectionTypes := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN +
INTERNET_CONNECTION_PROXY;
if IsConnectedToInternet(@dwConnectionTypes) then
begin
iTime := PingHost('127.0.0.1');
if (iTime = strtoint('-1')) or (iTime > 200) then
begin
form1.label1.Caption:='NOT Connected!';
end
else
begin
form1.Label1.Caption := 'Connected:';
end;
end;
Если этот отрывок запустить в onCreate видно что программа зависает потому что рядом с значком курсора появляется песочные часы
пробовал даже запустить это в отдельном потоке с приоритетом
tpHighest все равно зависает.
как то можно избавиться от зависания?