我需要一段能够检测网络连接是否已连接或断开的代码。连接状态意味着电缆已插入以太网连接。断开状态意味着没有连接电缆。
由于我在Windows CE上运行,我无法使用WMI界面。我不介意调用Win32 API但请记住我正在使用Windows CE并在Compact Framework上运行。
答案 0 :(得分:4)
最简单的方法是使用OpenNETCF's SDF并查看OpenNETCF.Net.NetworkInformation.NetworkInterfaceWatcher class,这会在NDIS发出通知时引发事件(如MEDIA_CONNECT和MEDIA_DISCONNECT)。
当然,没有SDF,你可以做同样的工作。它涉及直接加强NDIS驱动程序并使用P2P消息队列句柄调用IOCTL_NDISUIO_REQUEST_NOTIFICATION。这并不是太难,但是你需要做很多工作而不是泄漏。
答案 1 :(得分:2)
答案 2 :(得分:1)
调用GetAdaptersInfo并循环浏览可用网络适配器列表,直到找到您要查找的网络适配器?
答案 3 :(得分:0)
要记住的一件事是网络连接不等于互联网连接。
听起来你已经知道了,因为你将连接定义为“电缆插入以太网连接”的含义,但它需要重复。