DOT11_PHY_ID_LIST Struktur (windot11.h)
Syntax
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;
Member
Header
Der Typ, die Revision und die Größe der DOT11_PHY_ID_LIST-Struktur. Dieses Element ist als NDIS_OBJECT_HEADER-Struktur formatiert.
Der Miniporttreiber muss die Member von Header auf die folgenden Werte festlegen:
Typ
Dieser Member muss auf NDIS_OBJECT_TYPE_DEFAULT festgelegt werden.
Revision
Dieser Member muss auf DOT11_PHY_ID_LIST_REVISION_1 festgelegt werden.
Size
Dieser Member muss auf sizeof(DOT11_PHY_ID_LIST) festgelegt werden.
Weitere Informationen zu diesen Membern finden Sie unter NDIS_OBJECT_HEADER.
uNumOfEntries
Die Anzahl der Einträge im Array dot11PhyId .
uTotalNumOfEntries
Die maximale Anzahl von Einträgen, die das dot11PhyId-Array enthalten kann.
dot11PhyId[1]
Die Liste der PHY-Bezeichner (IDs).
Hinweise
Eine PHY-ID im dot11PhyId-Array muss eine der folgenden sein:
- Ein Index in der Tabelle der unterstützten PHYs, die vom nativen 802.11 Operational msDot11SupportedPhyTypes-Verwaltungsinformationsbasisobjekt (MIB) definiert werden. Weitere Informationen zu PHY-IDs und dem MIB-Objekt msDot11SupportedPhyTypes finden Sie unter OID_DOT11_SUPPORTED_PHY_TYPES.
- Eine PHY-ID mit dem Wert DOT11_PHY_ID_ANY. Diese PHY-ID wird als Einplatzhalter-PHY-ID bezeichnet und wird verwendet, um alle unterstützten PHY auf der 802.11-Station anzugeben. Wenn die Werthalter-PHY-ID verwendet wird, muss dies der einzige Eintrag im Array dot11PhyId sein.
Wenn diese OIDs abgefragt werden, muss der Miniporttreiber überprüfen, ob der InformationBuffer-Member des OidRequest-Parameters der MiniportOidRequest-Funktion groß genug ist, um die gesamte DOT11_PHY_ID_LIST-Struktur zurückzugeben, einschließlich aller Einträge im dot11PhyId-Array. Der Wert des InformationBufferLength-Members des OidRequest-Parameters bestimmt, was der Miniporttreiber tun muss, wie die folgende Liste zeigt:
-
Wenn der Wert des InformationBufferLength-Members kleiner als die Länge (in Bytes) der gesamten DOT11_PHY_ID_LIST-Struktur ist, muss der Miniporttreiber die folgenden Schritte ausführen:
- Legen Sie den uNumOfEntries-Member auf Null fest.
- Legen Sie den uTotalNumOfEntries-Member auf die Anzahl der Einträge im Array dot11PhyId fest.
- Legen Sie für den OidRequest-Parameter das BytesWritten-Element auf Null und das BytesNeed-Element auf die Länge der gesamten DOT11_PHY_ID_LIST-Struktur in Bytes fest.
- Führen Sie einen Fehler für die Abfrageanforderung durch Zurückgeben NDIS_STATUS_BUFFER_OVERFLOW aus der MiniportOidRequest-Funktion aus.
-
Wenn der Wert des InformationBufferLength-Members größer oder gleich der Länge (in Bytes) der gesamten DOT11_PHY_ID_LIST-Struktur ist, muss der Miniporttreiber die folgenden Schritte ausführen, um eine erfolgreiche Abfrageanforderung abzuschließen:
- Legen Sie für die DOT11_PHY_ID_LIST-Struktur die Elemente uNumOfEntries und uTotalNumOfEntries auf die Gesamtzahl der Einträge im Array dot11PhyId fest.
- Legen Sie für den OidRequest-Parameter den BytesNeed-Member auf Null und den BytesWritten-Member auf die Länge der gesamten DOT11_PHY_ID_LIST-Struktur in Bytes fest. Der Miniporttreiber muss auch die gesamte DOT11_PHY_ID_LIST-Struktur in das InformationBuffer-Element kopieren.
- Gibt NDIS_STATUS_SUCCESS aus der MiniportOidRequest-Funktion zurück.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme. |
Kopfzeile | windot11.h (include Ndis.h) |