如何以最快的方式检查网络连接?

本文关键字:检查 网络 连接 方式 | 更新日期: 2023-09-27 18:09:55

我正在为霍尼韦尔Dolphin 6100开发一个应用程序,这是一款带有条形码扫描器的移动计算机,使用Windows CE 5.0操作系统。

我想使用一个函数,可以检查网络连接是否存在,我尝试使用下面的代码,但它太慢了。

public static bool CheckForInternetConnection()
{
   string url = "http://www.Microsoft.com/";
   try
   {
       System.Net.WebRequest myRequest = System.Net.WebRequest.Create(url);
       System.Net.WebResponse myResponse = myRequest.GetResponse();
   }
   catch (System.Net.WebException)
   {
       return false;
   }
   return true;
}

有人有更快的方法吗?我提到我在win7上使用VS2008

如何以最快的方式检查网络连接?

由于您没有对响应的内容做任何操作,因此确实没有理由请求它,并等待所有数据的网络传输。您可以尝试设置myRequest。Method = "HEAD",它将只返回报头(假设web服务器支持它),但显然仍然验证您可以与远程web服务器通信。

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.method.aspx

假设您的。net运行时版本可用,您可以调用静态System.Net.NetworkInformation.GetIsNetworkAvailable()方法。在某些情况下,它会返回true你将无法路由到外部世界,但它会告诉你你的设备是否有一个标记为up的网络接口。