如何判断本机是否已经和InterNet连通?谢谢!!
解决方案 »
- 要做个预约功能,.net类似于outlook里的工作周日历要怎么做?如果不行能不能直接调用outlook的日历?
- 事务是不是默认在更新数据库的时候才能使用
- c# 调用foxpro打开prx文档
- 为什么,我在VS2005-C#Windows窗体设计中,加入什么控件都看不见!(---在线等---)
- Httpwebrequest的cookie传给webbrowser
- 二维数组a[,]怎么获得每一维的length?还有一个需要传参数的类组成的数组怎么创建?
- 关于image字段的问题
- 关于c#中的简单变量
- C# 如何调用onclick事件
- 菜鸟求助c#操作excel问题。
- 怎样判断一个字符是数字?
- 急!!!在windows服务中如何使用定时器
void On_Timer()
{
try
{
// Create an HTTP Web request
// to an Uri that's always available.
HttpWebRequest request = (HttpWebRequest)
HttpWebRequest.Create("www.google.com"); // Perform GET
HttpWebResponse response =
(HttpWebResponse) request.GetResponse();
if (HttpStatusCode.OK == response.StatusCode)
{
// HTTP = 200, close the request and return true
response.Close();
e.Result = true;
}
else
{
// Other status; return false
e.Result = false;
}
}
catch (WebException)
{
// Deffinitely offline
e.Result = false;
}
}
{
MessageBox.Show("请确认与互联网相连接");
}
private extern static bool InternetGetConnectedState(out int Description,int ReservedValue); public static bool IsConnectedToInternet()
{
int Desc=0;
return InternetGetConnectedState(out Desc,0) ;
}
Another method
public string NetStatus()
{
ManagementObjectCollection objects;
string status = "";
ManagementObjectSearcher searcher = new ManagementObjectSearcher();
searcher.Query.QueryString = "Select * From Win32_NetworkAdapter ";
objects = searcher.Get();
foreach(ManagementObject obj in objects)
{
foreach(PropertyData p in obj.Properties)
{
if(p.Name.Equals("NetConnectionStatus"))
{
if(p.Value!=null)
{
status = p.Value.ToString();
}
}
}
}
switch(status)
{
case "0":
return "Disconnected";
case "1":
return "Connecting ...";
case "2":
return "Connected";
case "3":
return "Disconnecting ...";
case "4":
return "Hardware not present";
case "5":
return "Hardware disabled";
case "6":
return "Hardware malfunction";
case "7":
return "Media disconnected";
case "8":
return "Authenticating";
case "9":
return "Authentication succeeded";
case "10":
return "Authentication failed";
default:
return "";
}
}