我想测量调制解调器的rssi值。是否有任何api可以获取Windows的rssi值?我曾经在android中使用Wifi.Manager来做到这一点,但我找不到Windows的任何api
DWORD WINAPI WlanQueryInterface(
__in HANDLE hClientHandle,
__in const GUID *pInterfaceGuid,
__in WLAN_INTF_OPCODE OpCode,
__reserved PVOID pReserved,
__out PDWORD pdwDataSize,
__out PVOID *ppData,
__out_opt PWLAN_OPCODE_VALUE_TYPE pWlanOpcodeValueType
);
这里使用操作码wlan_intf_opcode_rssi,您将获得RSSI值:
WLAN_INTF_OPCODE >> wlan_intf_opcode_rssi >> LONG
这里是有关如何开始的C ++示例:http://msdn.microsoft.com/en-us/library/windows/desktop/ms706765(v=vs.85).aspx
如果您想使用C#,请尝试以下操作:How to get SSID and RSSI for Win7 using C#
信号强度百分比和RSSI可以通过以下方式获得:Wlan.WlanAvailableNetwork []网络= wlanIface.GetAvailableNetworkList(0);
Wlan.WlanBssEntry[] redes = wlanIface.GetNetworkBssList(); //Get the atribute that you need
foreach (Wlan.WlanBssEntry network in redes)
{
Console.Write("Network SSID {0} RSSI {1}\n ", GetStringForSSID(network.dot11Ssid),
network.rssi);
}