我尝试getaddrinfo()
在我的应用程序中使用它来确定我是否连接到互联网。只要getaddinfo()
能够成功返回一切都OK。但是,一旦我将计算机与路由器断开连接,该功能的执行就会失败,大约需要 10 秒。
是否有解决此问题的解决方案,或者是否有更好的功能来检查我是否连接到互联网?
注意:此处已经提出了类似的问题,但禁用 DNSClient 服务对我不起作用。
我尝试getaddrinfo()
在我的应用程序中使用它来确定我是否连接到互联网。只要getaddinfo()
能够成功返回一切都OK。但是,一旦我将计算机与路由器断开连接,该功能的执行就会失败,大约需要 10 秒。
是否有解决此问题的解决方案,或者是否有更好的功能来检查我是否连接到互联网?
注意:此处已经提出了类似的问题,但禁用 DNSClient 服务对我不起作用。
BOOL InternetGetConnectedState( Out LPDWORD lpdwFlags, In DWORD dwReserved)函数可能是一个不错的选择。感谢达蒙。
InternetGetConnectedState 函数的存在是有原因的。- @达蒙