如何使用c ++桌面应用程序检查用户是否在线

时间:2012-05-07 13:58:05

标签: c++ internet-explorer visual-c++

如果用户离线,我的应用程序需要加载本地html文件,否则它将通过嵌入式控件加载他的Web应用程序。

如何使用嵌入式浏览器控件的c ++桌面应用程序检查用户是否在线?

3 个答案:

答案 0 :(得分:1)

您可以使用Network Location Awareness (NLA)来确定机器所连接的当前网络的特征。这与检查“用户是否在线”不一样,但应该足够了。

即使这样,如果可以访问互联网,也无法保证应用程序能够正确加载。如果在线案例是正常的,那么最好只是尝试在线加载,如果失败则回退到本地HTML。

答案 1 :(得分:1)

您可以尝试使用InternetGetConnectedState功能。但是,请确保您遵守备注部分中给出的评论,尤其是:

  

来自InternetGetConnectedState的返回值TRUE表示   至少有一个到Internet的连接

您也可以尝试直接使用特定网址的InternetCheckConnection功能。

还有更新的COM接口具有相同(或更好)的功能:

答案 2 :(得分:0)

您可以尝试ping www.google.com。如果使用Visual C ++,则可以使用IcmpSendEcho function