Страница 2 из 2

Re: Delphi - определить подключение к Интернету.

Добавлено: 31 мар 2008, 18:27
AiK
Не бывает в природе "чисто дельфийских" (равно как и сишных или же ассемблерных) решений для системных событий. Бывают только обёртки. Впрочем, это уже на оффтоп похоже :)

Re: Delphi - определить подключение к Интернету.

Добавлено: 31 мар 2008, 18:31
MOTOCoder
AiK писал(а):Не бывает в природе "чисто дельфийских" (равно как и сишных или же ассемблерных) решений для системных событий. Бывают только обёртки. Впрочем, это уже на оффтоп похоже :)
Под "чисто дельфийским" подходом я подразумеваю, например, какой-нибудь компонент, а в WinApi мне скорее всего просто сказали бы, что такого системного события нет.

Re: Delphi - определить подключение к Интернету.

Добавлено: 04 дек 2009, 15:59
Snake-ssr
Вот это должно работать



uses
windows,
registry,
ShellAPI,
SysUtils,
Psapi,
tlhelp32,
Messages,
Variants,
Classes,
Graphics,
Controls,
Forms,
Dialogs,
StdCtrls,
shlObj, activeX, filectrl, comObj,WinSock,mshtml, WinINet,OleCtrls, SHDocVw, HTTPApp, HTTPProd,
ComCtrls,ExtCtrls;

var
WebBrowser1:TWebBrowser;
HTMLDocument: IHTMLDocument2;
htm:String;
neton:boolean;

function RealOnline:boolean;



function base:boolean;
begin
WebBrowser1:=TWebBrowser.Create(WebBrowser1);
if htm<>'http://www.ya.ru/' then WebBrowser1.Navigate('www.ya.ru');
if htm<>'http://www.yandex.ru/' then WebBrowser1.Navigate('www.yandex.ru');
htm:='';
while Webbrowser1.ReadyState <> READYSTATE_INTERACTIVE do
application.ProcessMessages;

HTMLDocument := WebBrowser1.Document as IHTMLDocument2;
htm:=HTMLDocument.url;
if (htm='http://www.ya.ru/') or (htm='http://www.yandex.ru/') then neton:=true else neton:=false;

end;


function RealOnline:boolean;
begin
base;
HTMLDocument:=nil;
result:=neton;
end;

Re: Delphi - определить подключение к Интернету.

Добавлено: 11 янв 2010, 23:36
Ardatov
Подключите модуль WinInet, добавте следующую функцию:
function IsConnectedToInternet: Boolean;
var
dwConnectionTypes: DWORD;
begin
dwConnectionTypes :=
INTERNET_CONNECTION_MODEM +
INTERNET_CONNECTION_LAN +
INTERNET_CONNECTION_PROXY;
Result := InternetGetConnectedState(@dwConnectionTypes, 0);
end;

...

procedure TForm1.Button1Click(Sender: TObject);
begin
if IsConnectedToInternet then ShowMessage('online') else ShowMessage('offline');
end;

Re: Delphi - определить подключение к Интернету.

Добавлено: 23 янв 2010, 13:22
TAI_Andrey
посмотри ....