Nic*_*win 2 c# browser offline webbrowser-control
我们正在处理一个包装好的WebBrowser组件.如果用户在线,我们要显示一个页面(例如oursite.com/thispage.html),如果用户离线,我们要显示另一个页面(例如C:\ somewhere\thispage_offline.html).我能够正确显示两个页面,但我的问题是检测在线/离线状态.
我试过 WebBrowser.IsOffline ; 但是,似乎只能中继离线模式状态,而不是计算机是否真的能够到达互联网.
有没有办法从WebBrowser组件中检测到这个?有办法吗?
感谢你的帮助!
检查互联网连接的最简单方法是ping您的服务器.
试试这段代码:
public static bool IsOnline() {
var pinger = new Ping();
try {
return pinger.Send("oursite.com").Status == IPStatus.Success;
} catch(SocketException) { return false; } catch(PingException) { return false; }
}
Run Code Online (Sandbox Code Playgroud)
或者,您可以尝试使用WebRequest该类将请求发送到您网站上的简单页面,看看它是否成功.这是一个更好的选择,因为它还将确保IIS(或Apache)在服务器上运行.