我需要一种以编程方式确定互联网可用性的方法。 现在我用Ping来不断ping一些网站。
但似乎Windows 7虽然以其他方式确定了互联网可用性。 如果计算机处于联机状态,则系统托盘中的网络接口图标上会显示地球图标。
问题是:是否有任何标准的Win32方式来检查在线状态,赢取事件或其他什么,如果有,如何在C#中使用它?
答案 0 :(得分:4)
我相信这样的事情会起作用,虽然你的问题似乎是重复的:
using System;
using System.Runtime;
using System.Runtime.InteropServices;
public class InternetCS
{
//Creating the extern function...
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState( out int Description, int ReservedValue );
//Creating a function that uses the API function...
public static bool IsConnectedToInternet( )
{
int Desc ;
return InternetGetConnectedState( out Desc, 0 ) ;
}
}
forund:
答案 1 :(得分:2)
'连接到互联网'没有任何实际意义。测试任何资源是否可用的节拍方法是使用它。无论如何,你必须应对失败,不需要两次编码。