USBD_ParseDescriptors関数 (usbdlib.h)
USBD_ParseDescriptors ルーチンは、特定の構成記述子を検索し、検索条件に一致する最初の記述子へのポインターを返します。
構文
PUSB_COMMON_DESCRIPTOR USBD_ParseDescriptors(
[in] PVOID DescriptorBuffer,
[in] ULONG TotalLength,
[in] PVOID StartPosition,
[in] LONG DescriptorType
);
パラメーター
[in] DescriptorBuffer
検索する記述子を含む構成記述子へのポインター。
[in] TotalLength
DescriptorBuffer が指すバッファーのサイズをバイト単位で指定します。
[in] StartPosition
DescriptorBuffer で指定された構成記述子内のアドレスへのポインター。検索を開始します。 構成記述子の先頭から検索するには、 DescriptorBuffer パラメーターと StartPosition パラメーターが同じアドレスである必要があります。
[in] DescriptorType
USB によって割り当てられた記述子の種類コードを指定します。 USB で定義された記述子の種類では、次の値が有効です。
USB_STRING_DESCRIPTOR_TYPE
検索対象の記述子が文字列記述子であることを指定します。
USB_INTERFACE_DESCRIPTOR_TYPE
検索対象の記述子がインターフェイス記述子であることを指定します。
USB_ENDPOINT_DESCRIPTOR_TYPE
検索する記述子がエンドポイント記述子であることを指定します。
戻り値
USBD_ParseDescriptors は、指定された検索条件に一致する最初の記述子の先頭である USB_COMMON_DESCRIPTOR 構造体へのポインターを返します。一致するものが見つからない場合は NULL が返されます。
注釈
この構造体は、記述子の一部を保持するために使用されます。 これにより、USBD_ParseDescriptors の呼び出し元は、記述子内の残りのデータにアクセスするために使用する正しい構造を決定できます。 すべての記述子型にはデータの先頭にこれらのフィールドがあり、呼び出し元は bLength メンバーと bDescriptorType メンバーを使用して、この記述子の型を正しく識別できます。
このルーチンは、検索条件に一致する記述子を探して構成記述子を解析すると、最初の一致を返し、検索を終了します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | usbdlib.h (Usbdlib.h を含む) |
Library | Usbd.lib |
IRQL | < DISPATCH_LEVEL |