2011-06-01 49 views
11

在Windows 7中,只要互联网访问丢失,网络指示灯就会变为黄色。我想在我的软件中获得此状态,并在互联网连接丢失(互联网警报)时设置闹钟。我怎样才能获得这种状态?所有其他库如this one,只显示断开连接的状态(红色),或者说可以使用互联网。我找不到任何这样做的库或任何API函数。获取Windows 7的网络状态

回答

7

Windows API Code Pack有一个NetworkManager类可以让你IsConnected和IsConnectedToInternet。附带一些有用的样品。如果要检测状态更改,请不要轮询 - 您可以添加处理程序的.NET事件就像添加点击处理程序一样。

另见Detect Internet V. local lan connectionAn elegant/simple way to check whether internet is available or notI need a event to detect Internet connect/disconnect

+0

太棒了。我正在寻找的是Windows API代码包。这正是我想要的。 – 2011-06-01 16:11:57

+0

Windows API代码包神秘地从微软的网站上消失,因此上面的链接已经死了;然而,互联网永远不会忘记:http://stackoverflow.com/questions/24081665/windows-api-code-pack-where-is-it – 2017-03-04 22:23:51

1

您可以修改您找到的网络库。请看Network Interface ClassOperationalStatus可以更多的上下:):

+0

不错的答案,我一直在寻找这个 – Turowicz 2011-06-01 11:09:16

+2

是的,它具有比向上和向下值以上,但问题是,当网络断开连接(黄色图标)'OperationalStatus'仍然是'Up',所以它没有什么其他的值。 – 2011-06-01 11:11:30