_URB_CONTROL_GET_STATUS_REQUEST構造体 (usb.h)
_URB_CONTROL_GET_STATUS_REQUEST構造体は、USB クライアント ドライバーがデバイス、インターフェイス、エンドポイント、またはその他のデバイス定義ターゲットから状態を取得するために使用されます。
構文
struct _URB_CONTROL_GET_STATUS_REQUEST {
struct _URB_HEADER Hdr;
PVOID Reserved;
ULONG Reserved0;
ULONG TransferBufferLength;
PVOID TransferBuffer;
PMDL TransferBufferMDL;
struct _URB *UrbLink;
struct _URB_HCD_AREA hca;
UCHAR Reserved1[4];
USHORT Index;
USHORT Reserved2;
};
メンバー
Hdr
URB ヘッダー情報を指定する _URB_HEADER 構造体へのポインター。 Hdr.Length は である sizeof(_URB_CONTROL_GET_STATUS_REQUEST)
必要があり、 Hdr.Function は次のいずれかの値である必要があります。
- URB_FUNCTION_GET_STATUS_FROM_DEVICE
- URB_FUNCTION_GET_STATUS_FROM_INTERFACE
- URB_FUNCTION_GET_STATUS_FROM_ENDPOINT
- URB_FUNCTION_GET_STATUS_FROM_OTHER
Reserved
予約済み。 使用しないでください。
Reserved0
予約済み。 使用しないでください。
TransferBufferLength
2 である必要があります。 このメンバーは、 TransferBuffer で指定されたバッファーまたは TransferBufferMDL で説明されているバッファーの長さをバイト単位で指定します。 ホスト コントローラー ドライバーは、このメンバーのパイプに送信またはパイプから読み取られたバイト数を返します。
TransferBuffer
転送用の常駐バッファーへのポインター。MDL が TransferBufferMDL で指定されている場合は NULL です。 バス ドライバーは、ターゲットの状態を指定する 1 バイトを返します。
TransferBufferMDL
常駐バッファーを記述する MDL へのポインター。バッファーが TransferBuffer で指定されている場合は NULL です。 バス ドライバーは、ターゲットの状態を指定する 1 バイトを返します。 この MDL は、非ページ プールから割り当てる必要があります。
UrbLink
予約済み。 使用しないでください。
hca
予約済み。 使用しないでください。
Reserved1[4]
予約済み。 使用しないでください。
Index
要求がエンドポイントまたはインターフェイスに対する場合、成功した構成要求によって返されるデバイス定義インデックスを指定します。 それ以外の場合、 Index は 0 である必要があります。
Reserved2
予約済み。 使用しないでください。
注釈
ドライバーは 、UsbBuildGetStatusRequest サービス ルーチンを使用して、この URB を書式設定できます。
この構造体の予約済みメンバーは不透明として扱う必要があり、システム使用のために予約されています。
要件
要件 | 値 |
---|---|
Header | usb.h (Usb.h を含む) |