Найти канал с помощью Windows API

Я пытаюсь получить канал с помощью Windows API. До сих пор я пытался использовать wlan_intf_opcode_channel_number с функцией WlanQueryInterface.
Я не слишком уверен, что означает ответ в этой ветке, и надеялся, что кто-нибудь сможет уточнить.

ULONG channel = 0;
DWORD dwSizeChannel = sizeof(channel);

dwResult = WlanQueryInterface(
hClient,
InterfaceGuid,
wlan_intf_opcode_channel_number,
NULL,
&dwSizeChannel,
(PVOID*)&channel,
NULL);

Я не уверен, что делать после здесь. Любая помощь будет оценена!
После проверки я обнаружил, что всегда получаю то же значение, что и канал, до вызова WlanQueryInterface

0

Решение

Я опробовал WlanQueryInterface со входами из документации:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms706765(v=vs.85).aspx

Когда запрос, основанный на «wlan_intf_opcode_channel_number», был запущен, я получил данные как «13». И частота может быть определена как 2472 МГц из информации WLAN, предоставленной по следующей ссылке в Википедии:
https://en.wikipedia.org/wiki/List_of_WLAN_channels

Надеюсь это поможет.

0

Другие решения

МС документы для кода операции, кажется, неправильно. Если вы попробуете что-то подобное здесь:


ULONG * канал = NULL;
DWORD dwSizeChannel = sizeof (* канал);

DWORD rc = WlanQueryInterface (
hClient, InterfaceGuid,
wlan_intf_opcode_channel_number,
НОЛЬ, dwSizeChannel, канал, NULL);

if (rc == ERROR_SUCCESS  канал) {
printf ("Канал:% lu \ n", * канал):
WlanFreeMemory (канал);
}

Я получаю ожидаемое

Канал: 5

.

То же самое касается wlan_intf_opcode_current_operation_mode и, возможно, другие операционные коды, которые просто ULONG.

0

По вопросам рекламы [email protected]