none
C++ WLANAPI найти ширину канала сети RRS feed

  • Вопрос

  • Собственно сабж: необходимо найти ширину канала конкретной сети Wi-Fi, зная ее SSID, WlanAPI дал возможность получить номер канала (центральную частоту), как найти ширину я не обнаружил. Язык С++, ОС Windows 7.

    Буду благодарен за помощь!

Ответы

  • Кажется я неправильно понял, что вам нужно. Если речь идет о ширине канала в Герцах, думаю получиться узнать.

    В Wlan API есть функция WlanGetNetworkBssList, которая возвращает структуры WLAN_BSS_ENTRY. Эта структура содержит блок информации переменной длины (определяемый полями ulIeOffset и ulIeSize), содержащий информационные элементы, которые точка доступа рассылает в своих оповещениях (Beacon frame). Точка доступа, работающая по стандарту 802.11n, должна рассылать HT Capabilities Information Element. Поле HT Capabilities Info, в первом бите, содержит информацию о поддержке ширины 40 MGHz. К сожалению, не могу пока проверить на практике, нет подходящих устройств для экспериментов. 

  • Ни одного решения в эту сторону найти не удалось, так что скорее всего нет. Как видно и в самом API есть  множество функционала, но тем не менее, не имеется такого, который бы был полезен для ширины канала.

    Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.

    Модератор

Все ответы

  • Здравствуйте,

    Посмотрите в сторону: Native Wifi API Sample


    Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.

    Модератор
  • на англоязычном форуме уже ответили, что напрямую это, судя по всему, нереально сделать. Может есть идеи с какой стороны подойти к этой проблеме?
    • Изменено 1argentum1 18 мая 2017 г. 12:02
  • Ни одного решения в эту сторону найти не удалось, так что скорее всего нет. Как видно и в самом API есть  множество функционала, но тем не менее, не имеется такого, который бы был полезен для ширины канала.

    Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.

    Модератор
  • нужно определить скорость произвольной сети, не подключаясь к ней? это, полагаю, технически невозможно
  • Кажется я неправильно понял, что вам нужно. Если речь идет о ширине канала в Герцах, думаю получиться узнать.

    В Wlan API есть функция WlanGetNetworkBssList, которая возвращает структуры WLAN_BSS_ENTRY. Эта структура содержит блок информации переменной длины (определяемый полями ulIeOffset и ulIeSize), содержащий информационные элементы, которые точка доступа рассылает в своих оповещениях (Beacon frame). Точка доступа, работающая по стандарту 802.11n, должна рассылать HT Capabilities Information Element. Поле HT Capabilities Info, в первом бите, содержит информацию о поддержке ширины 40 MGHz. К сожалению, не могу пока проверить на практике, нет подходящих устройств для экспериментов.