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

こちらもご覧ください

USB デバイス ドライバーのプログラミング参照