Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用windowsapi的RSSI_C++_Windows_Winapi_Wifi_Rssi - Fatal编程技术网

C++ 使用windowsapi的RSSI

C++ 使用windowsapi的RSSI,c++,windows,winapi,wifi,rssi,C++,Windows,Winapi,Wifi,Rssi,我正在尝试使用windows API获取RSSI。到目前为止,我发现有一个线程说要使用wlan_intf_opcode_rssi和WlanQueryInterface函数。我不太确定这个帖子的回复是什么意思,希望有人能澄清一下 从另一个线程中,我所能理解的是: WlanQueryInterface(hClient, &pInfo->InterfaceGuid, wlan_intf_opcode_rssi, NULL, &connectInfoSize

我正在尝试使用windows API获取RSSI。到目前为止,我发现有一个线程说要使用wlan_intf_opcode_rssi和WlanQueryInterface函数。我不太确定这个帖子的回复是什么意思,希望有人能澄清一下

从另一个线程中,我所能理解的是:

WlanQueryInterface(hClient,
   &pInfo->InterfaceGuid,
   wlan_intf_opcode_rssi,
   NULL,
   &connectInfoSize,
   (PVOID*)&pConnectInfo,
   &opCode);

我不知道在这里之后该怎么办。任何帮助都将不胜感激

您将错误类型的参数传递给
WlanQueryInterface
wlan\u intf\u opcode\u rssi
的返回类型很长,因此需要传递一个指向长变量的指针,如下所示:

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);
}

到底是什么问题?您是否从
WlanQueryInterface
收到错误代码?我知道这已经有一段时间了,但我一直在使用您的代码获取RSSI。似乎我得到的值太高(下溢?),例如984188178。我尝试将
%u
格式说明符替换为
%d
%ld
,但问题仍然存在。
WlanQueryInterface
的返回值仍然是
ERROR\u SUCCESS
。你有什么线索吗?谢谢