function IsWin95: boolean;
var OS: TOSVersionInfo;
begin
    ZeroMemory(@OS,SizeOf(OS));
    OS.dwOSVersionInfoSize:= SizeOf(OS);
    GetVersionEx(OS);
    Result:= (OS.dwMajorVersion>=4) and (OS.dwMinorVersion=0) and
             (OS.dwPlatformId= VER_PLATFORM_WIN32_WINDOWS);
end;

function FuncAvail(_dllname, _funcname: string;var _p: pointer): boolean;
var _lib: tHandle;
begin
   Result := false;
   if LoadLibrary(PChar(_dllname)) = 0 then exit;
   _lib := GetModuleHandle(PChar(_dllname)) ;
   if _lib <> 0 then
   begin
      _p := GetProcAddress(_lib, PChar(_funcname)) ;
      if _p <> NIL then Result := true;
   end;
end;

procedure verifica_conexao_internet;
var
   InetIsOffline : function(dwFlags: DWORD):BOOL; stdcall;
   Lib: string;
begin
   if(IsWin95) then
       Lib:= 'SHELL32.DLL'
    else
       Lib:= 'URL.DLL';

    if FuncAvail(Lib, 'InetIsOffline',@InetIsOffline) then begin
       if (InetIsOffLine(0)) then begin
          ShowMessage('Este computador não está conectado à Internet.');
          abort;
       end;
    end;
end;

É só chamar declarar as funções e chamar a função verifica_conexao_internet;
De todas as funções que procurei, somente nesta forma resolvi o meu problema.

Espero ter ajudado aos amigos,

Alex

  ----- Original Message ----- 
  From: Humberto Oliveira 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, May 15, 2009 2:34 PM
  Subject: Re: [delphi-br] Conexao com a internet





  Passa a solução para a galera aí.

  Minha pergunta sobre o Proxy, é que existe validação também para tal, e se
  não efetuar a validação, a conexão retorna falsa mesmo.

  Abraços.

  2009/5/15 Alexandre <alexandresoare...@yahoo.com.br>

  >
  >
  > Já resolvi meu problema amigo, obrigado!
  >
  > Alex
  >
  > ----- Original Message -----
  > From: Humberto Oliveira
  > To: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>
  > Sent: Friday, May 15, 2009 1:58 PM
  > Subject: Re: [delphi-br] Conexao com a internet
  >
  > Existe validação de proxy?
  >
  > 2009/5/15 Alexandre 
<alexandresoare...@yahoo.com.br<alexandresoaressp%40yahoo.com.br>
  > >
  >
  > >
  > >
  > > Pessoal estou usando a função InternetGetConnectedState para verificar se
  > a
  > > máquina esta conectada à internet, em um cliente a função retorna que não
  > > esta conectado, mas ele esta conectado sim, alguem já passou por isso e
  > sabe
  > > como solucionar?já tentei vários exemplos da internet mas não resolve.
  > >
  > > Alex
  > >
  > > __________ Information from ESET NOD32 Antivirus, version of virus
  > > signature database 4079 (20090515) __________
  > >
  > > The message was checked by ESET NOD32 Antivirus.
  > >
  > > http://www.eset.com
  > >
  > > [As partes desta mensagem que não continham texto foram removidas]
  > >
  > >
  > >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > __________ Information from ESET NOD32 Antivirus, version of virus
  > signature database 4080 (20090515) __________
  >
  > The message was checked by ESET NOD32 Antivirus.
  >
  > http://www.eset.com
  >
  > __________ Information from ESET NOD32 Antivirus, version of virus
  > signature database 4080 (20090515) __________
  >
  > The message was checked by ESET NOD32 Antivirus.
  >
  > http://www.eset.com
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > 
  >

  [As partes desta mensagem que não continham texto foram removidas]



  


  __________ Information from ESET NOD32 Antivirus, version of virus signature 
database 4080 (20090515) __________

  The message was checked by ESET NOD32 Antivirus.

  http://www.eset.com



__________ Information from ESET NOD32 Antivirus, version of virus signature 
database 4080 (20090515) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com



[As partes desta mensagem que não continham texto foram removidas]

Responder a