DOT11_BYTE_ARRAY構造 (windot11.h)
構文
typedef struct DOT11_BYTE_ARRAY {
NDIS_OBJECT_HEADER Header;
ULONG uNumOfBytes;
ULONG uTotalNumOfBytes;
UCHAR ucBuffer[1];
} DOT11_BYTE_ARRAY, *PDOT11_BYTE_ARRAY;
メンバー
Header
DOT11_BYTE_ARRAY構造体の型、リビジョン、サイズ。 このメンバーは、 NDIS_OBJECT_HEADER 構造体として書式設定されます。
ミニポート ドライバーは 、ヘッダー のメンバーを次の値に設定する必要があります。
型
このメンバーは、NDIS_OBJECT_TYPE_DEFAULTに設定する必要があります。
リビジョン
このメンバーは、DOT11_BYTE_ARRAY構造体に従う可変長構造体のリビジョンに設定する必要があります。 これらの構造体のリビジョンの詳細については、「関連項目」セクションに記載されているオブジェクト識別子 (OIDS) を参照してください。
サイズ
このメンバーは sizeof(DOT11_BYTE_ARRAY) に設定する必要があります。
これらのメンバーの詳細については、「 NDIS_OBJECT_HEADER」を参照してください。
uNumOfBytes
ucBuffer 配列内のバイト数。
uTotalNumOfBytes
ucBuffer 配列に必要な最大バイト数。
ucBuffer[1]
可変長構造体の一覧。
注釈
ucBuffer 配列に格納される構造体の種類は、OID セットとクエリ要求によって異なります。 たとえば、 OID_DOT11_ENUM_BSS_LISTによって照会された場合、ミニポート ドライバーは ucBuffer 配列に 1 つ以上のDOT11_BSS_ENTRY構造体を格納します。
DOT11_BYTE_ARRAY構造体を使用する OID によって照会された場合、ミニポート ドライバーは、MiniportOidRequest 関数の OidRequest パラメーターの InformationBuffer メンバーが、ucBuffer 配列内のすべてのエントリを含む構造体全体を返すのに十分な大きさであることを確認する必要があります。 OidRequest パラメーターの InformationBufferLength メンバーの値は、次の一覧に示すように、ミニポート ドライバーが実行する必要がある内容を決定します。
-
InformationBufferLength メンバーの値が、DOT11_BYTE_ARRAY構造体全体の長さ (バイト単位) より小さい場合、ミニポート ドライバーは次の操作を行う必要があります。
- OidRequest パラメーターの場合、BytesWritten メンバーを 0 に設定し、BytesNeeded メンバーを、DOT11_BYTE_ARRAY構造体全体の長さ (バイト単位) に設定します
- MiniportOidRequest 関数からNDIS_STATUS_BUFFER_OVERFLOWを返して、クエリ要求を失敗します。
-
InformationBufferLength メンバーの値が、DOT11_BYTE_ARRAY構造体全体の長さ (バイト単位) 以上の場合、ミニポート ドライバーは、クエリ要求を正常に完了するために次の操作を行う必要があります。
- DOT11_BYTE_ARRAY構造体の場合は、 uNumOfBytes メンバーと uTotalNumOfBytes メンバーを ucBuffer 配列内のエントリの合計数に設定します。
- OidRequest パラメーターの場合、BytesNeeded メンバーを 0 に設定し、BytesWritten メンバーを、DOT11_BYTE_ARRAY構造体全体の長さ (バイト単位) に設定します。 また、ミニポート ドライバーは、DOT11_BYTE_ARRAY構造体全体を InformationBuffer メンバーにコピーする必要があります。
- MiniportOidRequest 関数からNDIS_STATUS_SUCCESSを返します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
Header | windot11.h (Ndis.h を含む) |