确定networking连接链路速度

如何以编程方式确定活动networking连接的networking连接链接速度 – 就像“任务pipe理器”在“networking”选项卡中显示的那样? 我并不是真的在可用的带宽之后,只是当前连接的数字,例如54Mbps,100Mbps等。

Win32_NetworkAdapter WMI类可以帮助你( Speed属性)。 它为连接到WiFi-g接入点的WiFi适配器返回值54000000。

最后,我找到了Win32_PerfRawData_Tcpip_NetworkInterface WMI类,因为我需要支持遗留平台,不幸的是, Win32_NetworkAdapter不能这样做。 Win32_PerfRawData_Tcpip_NetworkInterface有一个CurrentBandwidth属性,它给了我在所有需要的平台上所需要的东西(我知道我说我不需要“带宽”,但它是可以接受的,并且似乎无论如何都返回适配器的“标称带宽”)。

感谢所有贴出来的人,指引着我正确的方向。

.NET方式如何知道适配器的速度是

 IPGlobalProperties computerProperties = IPGlobalProperties.GetIPGlobalProperties(); NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces(); if ( nics != null ) for (int i = 0; i < nics.Length; i++) Console.WriteLine("Adapter '{0}' speed : {1}", nics[i].Name, nics[i].Speed); 

某些适配器是隧道,所以它们的速度将返回为0.请阅读MSDN上的NetworkInterface文档以获取更多信息。