Windows 下,使用netsh wlan show interface可以看到無線網卡的狀況,但不幸的是,裡面的接收速率和傳送速率都不會改變,所以你在網路連線、或者網路和共用中心,點擊無線網卡看到的那一個速度,和 netsh 看到的不一定一樣。
那麼,點擊網卡看到的那一個速度,要去哪邊看?[System.Net.NetworkInformation.NetworkInterface]::GetAllNetworkInterfaces()看到速度是 600000000,完全不知道是什麼東西。
最終讓我 Google 到了,記錄一下:
using namespace System;
using namespace System.Net.NetworkInformation;
$wlan_interface = [NetworkInterface]::GetAllNetworkInterfaces() |
Where({$_.OperationalStatus -eq [OperationalStatus]::Up -and $_.NetworkInterfaceType -eq [NetworkInterfaceType]::Wireless80211});
(Get-WmiObject -Query "SELECT * FROM MSNdis_LinkSpeed WHERE InstanceName='$($wlan_interface.Description)'" -Namespace "root\wmi");
答案就在 NdisLinkSpeed 這兒,我拿到 1500000,也就是 150Mbps,完全答對;當點擊網卡看到的速度改變時,NdisLinkSpeed 的值當然也會跟著變,真是可喜可賀。