USBD_ValidateConfigurationDescriptor関数 (usbdlib.h)
USBD_ValidateConfigurationDescriptor ルーチンは、構成記述子要求への応答でデバイスによって返されるすべての記述子を検証します。
構文
USBD_STATUS USBD_ValidateConfigurationDescriptor(
[in] PUSB_CONFIGURATION_DESCRIPTOR ConfigDesc,
[in] ULONG BufferLength,
[in] USHORT Level,
[out] PUCHAR *Offset,
[in, optional] ULONG Tag
);
パラメーター
[in] ConfigDesc
USB デバイスから取得されたすべてのインターフェイス、エンドポイント、ベンダー、およびクラス固有の記述子を含む構成記述子へのポインター。
[in] BufferLength
検証対象の構成記述子のサイズ (バイト単位)。
[in] Level
実行する検証のレベル。 有効な値を次に示します。
- 1-構成記述子ヘッダーの基本的な検証。
- 2- 無効なエンドポイント アドレス、インターフェイス番号、記述子構造、インターフェイス代替設定、インターフェイスの数、およびすべての記述子の bLength フィールドの のチェックを含む、構成記述子の完全な検証。
- 3-レベル 1 とレベル 2 の検証に加えて、レベル 3 では、各インターフェイス内のエンドポイントの数が検証され、USB 仕様の記述子 bLength サイズが適用され、すべてのインターフェイス番号が順番に確認されます。
[out] Offset
検証に失敗した構成記述子内のオフセット。 USBD_STATUS_SUCCESS以外の状態が返された場合にのみ有効です。
[in, optional] Tag
メモリを割り当てるときに USBD_ValidateConfigurationDescriptor によって使用されるプール タグ。
戻り値
USBD_STATUS_SUCCESS、または検証に失敗した場合は適切な USBD エラー コード。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降のオペレーティング システムで使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | usbdlib.h (Usbdlib.h を含む) |
ライブラリ | Usbd.lib |
IRQL | PASSIVE_LEVEL |