似乎我不是唯一一个发现这个的人: http://forums.devx.com/showthread.php?t=72771
实际上两者都是:
的InternetGetConnectedState
InternetGetConnectedStateEx
未正确报告。 当我连接时,它返回0x12,当我没有连接时,它返回0x10 (0x10未定义) http://msdn.microsoft.com/en-us/library/aa384705(VS.85).aspx
有人想关注WinXP SP3中0x10的定义吗?
在这个论坛上阅读了一些关于测试互联网连接(C / C ++)存在的建议 How can I programmatically test an HTTP connection?
我会写一个WinHTTP函数来返回服务器主网页的标题,除了我要测试连接的服务器,只运行CGI应用程序。我宁愿不浪费宝贵的服务器内存和处理器资源来确认成千上万的客户端连接。
还有其他建议吗?
答案 0 :(得分:1)
InternetGetConnectedState / Ex()返回一个DWORD,它是多个值的位掩码。值0x12是INTERNET_CONNECTION_LAN
(0x02)和INTERNET_CONNECTION_RAS_INSTALLED
(0x10)的组合。因此,当您连接时,系统会报告INTERNET_CONNECTION_LAN
,当您断开连接时,INTERNET_CONNECTION_LAN
将被忽略。
答案 1 :(得分:0)
当然0x10不是可能的标志的组合吗?
e.g。在这里,我找到了WIN API Internet Get Connected State
INTERNET_CONNECTION_RAS_INSTALLED = 0x10