структура DOT11_PHY_ID_LIST (windot11.h)
Синтаксис
typedef struct DOT11_PHY_ID_LIST {
NDIS_OBJECT_HEADER Header;
ULONG uNumOfEntries;
ULONG uTotalNumOfEntries;
ULONG dot11PhyId[1];
} DOT11_PHY_ID_LIST, *PDOT11_PHY_ID_LIST;
Члены
Header
Тип, редакция и размер структуры DOT11_PHY_ID_LIST. Этот элемент отформатирован как структура NDIS_OBJECT_HEADER .
Драйвер мини-порта должен задать для членов Header следующие значения:
Тип
Для этого элемента необходимо задать значение NDIS_OBJECT_TYPE_DEFAULT.
Редакция
Для этого элемента необходимо задать значение DOT11_PHY_ID_LIST_REVISION_1.
Размер
Для этого элемента необходимо задать значение sizeof(DOT11_PHY_ID_LIST).
Дополнительные сведения об этих элементах см. в разделе NDIS_OBJECT_HEADER.
uNumOfEntries
Количество записей в массиве dot11PhyId .
uTotalNumOfEntries
Максимальное количество записей, которое может содержать массив dot11PhyId .
dot11PhyId[1]
Список идентификаторов PHY.
Комментарии
Идентификатор PHY в массиве dot11PhyId должен иметь один из следующих значений:
- Индекс в таблице поддерживаемых значений PHY, определенных объектом MIB (Native 802.11 Operational msDot11SupportedPhyTypes ). Дополнительные сведения об идентификаторах PHY и объекте MIB msDot11SupportedPhyTypes см. в разделе OID_DOT11_SUPPORTED_PHY_TYPES.
- Идентификатор PHY со значением DOT11_PHY_ID_ANY. Этот идентификатор PHY называется идентификатором PHY с подстановочным знаком и используется для указания любого поддерживаемого PHY на станции 802.11. Если используется идентификатор PHY с подстановочным знаком, он должен быть единственной записью в массиве dot11PhyId .
При запросе этих идентификаторов OID драйвер мини-порта должен убедиться, что член InformationBuffer параметра OidRequest функции MiniportOidRequest достаточно велик, чтобы вернуть всю структуру DOT11_PHY_ID_LIST, включая все записи в массиве dot11PhyId. Значение элемента InformationBufferLength параметра OidRequest определяет, что должен делать драйвер miniport, как показано в следующем списке:
-
Если значение элемента InformationBufferLength меньше длины (в байтах) всей структуры DOT11_PHY_ID_LIST, драйвер мини-порта должен выполнить следующие действия:
- Задайте для элемента uNumOfEntries нулевое значение.
- Задайте для элемента uTotalNumOfEntries количество записей в массиве dot11PhyId .
- Для параметра OidRequest задайте для элемента BytesWritten значение 0, а для элемента BytesNeeded — длину в байтах всей структуры DOT11_PHY_ID_LIST.
- Завершите запрос, возвращая NDIS_STATUS_BUFFER_OVERFLOW из функции MiniportOidRequest .
-
Если значение элемента InformationBufferLength больше или равно длине (в байтах) всей структуры DOT11_PHY_ID_LIST, драйвер мини-порта должен выполнить следующие действия для успешного выполнения запроса:
- Для структуры DOT11_PHY_ID_LIST задайте для элементов uNumOfEntries и uTotalNumOfEntries общее количество записей в массиве dot11PhyId .
- Для параметра OidRequest задайте для элемента BytesNeeded значение 0, а для элемента BytesWritten — длину всей структуры DOT11_PHY_ID_LIST в байтах. Драйвер мини-порта также должен скопировать всю структуру DOT11_PHY_ID_LIST в элемент InformationBuffer .
- Возвращает NDIS_STATUS_SUCCESS из функции MiniportOidRequest .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Верхняя часть | windot11.h (включая Ndis.h) |