Я пытаюсь получить RSSI с помощью API окон. До сих пор я нашел этот поток, говорящий, чтобы использовать wlan_intf_opcode_rssi с функцией WlanQueryInterface. Я не слишком уверен в том, что означает ответ на эту тему, и надеялся, что кто-то сможет прояснить ситуацию.
Все, что мне удалось понять из другого потока, это:
WlanQueryInterface(hClient,
&pInfo->InterfaceGuid,
wlan_intf_opcode_rssi,
NULL,
&connectInfoSize,
(PVOID*)&pConnectInfo,
&opCode);
Я не уверен, что делать после этого. Любая помощь будет оценена!
Вы передаете неправильный тип аргумента WlanQueryInterface
. MSDN говорит, что тип возврата для wlan_intf_opcode_rssi
LONG, поэтому вам нужно передать указатель на переменную LONG, например:
LONG rssi = 0;
DWORD dwSizeRssi = sizeof(rssi);
dwResult = WlanQueryInterface(hClient,
&pIfInfo->InterfaceGuid,
wlan_intf_opcode_rssi,
NULL,
&dwSizeRssi,
(PVOID *)&rssi,
&opCode);
if (dwResult == ERROR_SUCCESS)
{
wprintf(L"RSSI = %u \n", rssi);
}
%u
на %d
или %ld
, но проблема остается той же. Возвращаемое значение WlanQueryInterface
все еще ERROR_SUCCESS
хотя. Вы случайно не знаете? Спасибо
WlanQueryInterface
?