скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Определить, есть ли активное соединение с Интернетом 2



Оформил: DeeCo

 {Dynamic linking. }

 function IsConnectedToInternet(lpdwFlags: LPDWORD): Boolean;
 const
   WininetDLL = 'wininet.dll';
 var
   hWininetDLL: THandle;
   dwReserved: DWORD;
   fn_InternetGetConnectedState: function(lpdwFlags: LPDWORD; dwReserved: DWORD): BOOL; stdcall;
 begin
   Result := False;
   dwReserved := 0;
   hWininetDLL := LoadLibrary(WininetDLL);
   if hWininetDLL > 0 then
   begin
     @fn_InternetGetConnectedState := GetProcAddress(hWininetDLL,'InternetGetConnectedState');
     if Assigned(fn_InternetGetConnectedState) then
     begin
       Result := fn_InternetGetConnectedState(lpdwFlags, dwReserved);
     end;
     FreeLibrary(hWininetDLL);
   end else
    raise Exception.Create('Unable to locate function InternetGetConnectedState in library ' + WininetDLL);

 end;

 procedure TForm1.Button1Click(Sender: TObject);
 const
   INTERNET_CONNECTION_MODEM = 1;
   INTERNET_CONNECTION_LAN = 2;
   INTERNET_CONNECTION_PROXY = 4;
   INTERNET_CONNECTION_MODEM_BUSY = 8;
 var
   dwConnectionTypes: DWORD;
 begin
   dwConnectionTypes :=
     INTERNET_CONNECTION_MODEM +
     INTERNET_CONNECTION_LAN +
     INTERNET_CONNECTION_PROXY;
   if IsConnectedToInternet(@dwConnectionTypes) then
     ShowMessage('Connected.')
   else
     ShowMessage('Not Connected.')
 end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook