windows - InternetCheckConnection returnerer altid falsk

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg vil bruge funktionen Wininet InternetCheckConnection for at kontrollere, hvornår maskinen er tilsluttet internettet og få adgang til en bestemt vært.
Problemet er, at denne funktion altid vender tilbage false , uanset hvilken webadresse jeg har lagt på den.


MSDN-link [8]

Bedste reference


Følgende kombination virker for mig på Windows 7 og Windows XP SP3:


 InternetCheckConnection("http://www.google.com", FLAG\_ICC\_FORCE\_CONNECTION, 0) ;


GetLastError () returnerer 0, hvis forbindelsen er mulig, og den vender tilbage
12029 (Forsøg på at oprette forbindelse til serveren mislykkedes), hvis ikke.


Følgende combonations virker ikke for mig:


  InternetCheckConnection(NULL, FLAG\_ICC\_FORCE\_CONNECTION, 0) ;


GetLastError () returnerer 12016 (Den ønskede operation er ugyldig).


  InternetCheckConnection(NULL, 0, 0) ;
  InternetCheckConnection(("http://www.google.com", 0, 0) ;


for begge GetLastError () returnerer 2250 (Netværksforbindelsen kunne ikke findes).

Andre referencer 1


Har du tjekket GetLastError()? Hvis jeg læser MSDN korrekt, skal du tjekke for ERROR\_NOT\_CONNECTED for at afgøre, om du er virkelig offline.

Andre referencer 2


Bare et vildt gæt, men det skyldes måske en personlig firewall, der blokkerer alle udgående forbindelser til en af ​​Windows DLL'erne og/eller din ansøgning?