WDF_USB_REQUEST_COMPLETION_PARAMS 構造体 (wdfusb.h)

[KMDF と UMDF に適用]

WDF_USB_REQUEST_COMPLETION_PARAMS構造体には、USB デバイスの I/O 要求の完了に関連付けられているパラメーターが含まれています。

構文

typedef struct _WDF_USB_REQUEST_COMPLETION_PARAMS {
  USBD_STATUS          UsbdStatus;
  WDF_USB_REQUEST_TYPE Type;
  union {
    struct {
      WDFMEMORY Buffer;
      USHORT    LangID;
      UCHAR     StringIndex;
      UCHAR     RequiredSize;
    } DeviceString;
    struct {
      WDFMEMORY                    Buffer;
      WDF_USB_CONTROL_SETUP_PACKET SetupPacket;
      ULONG                        Length;
    } DeviceControlTransfer;
    struct {
      WDFMEMORY Buffer;
    } DeviceUrb;
    struct {
      WDFMEMORY Buffer;
      size_t    Length;
      size_t    Offset;
    } PipeWrite;
    struct {
      WDFMEMORY Buffer;
      size_t    Length;
      size_t    Offset;
    } PipeRead;
    struct {
      WDFMEMORY Buffer;
    } PipeUrb;
  } Parameters;
} WDF_USB_REQUEST_COMPLETION_PARAMS, *PWDF_USB_REQUEST_COMPLETION_PARAMS;

メンバー

UsbdStatus

I/O ターゲットから返された USBD_STATUS型指定の状態値。

Type

要求の種類を識別する WDF_USB_REQUEST_TYPE型指定の値。

Parameters

Parameters.DeviceString

Parameters.DeviceString.Buffer

ドライバーが WdfUsbTargetDeviceFormatRequestForString を呼び出した場合、このメンバーには、Unicode 文字列を受け取るメモリ オブジェクトに対するドライバー指定のハンドルが含まれます。

Parameters.DeviceString.LangID

ドライバーが WdfUsbTargetDeviceFormatRequestForString を呼び出した場合、このメンバーにはドライバー指定の言語識別子が含まれます。

Parameters.DeviceString.StringIndex

ドライバーが WdfUsbTargetDeviceFormatRequestForString を呼び出した場合、このメンバーにはドライバー指定の文字列インデックスが含まれます。

Parameters.DeviceString.RequiredSize

ドライバーがデバイスの Unicode 文字列 (WdfUsbTargetDeviceFormatRequestForUrb を除く) を取得するメソッドを呼び出した場合、このメンバーには Parameters.DeviceString.Buffer が指定するバッファーの必要なサイズが含まれます。

ドライバーが WdfUsbTargetDeviceFormatRequestForUrb と呼ばれる場合、ハンドルが Parameters.DeviceUrb.Buffer にある URB から必要なサイズ値を取得できます。

Parameters.DeviceControlTransfer

Parameters.DeviceControlTransfer.Buffer

ドライバーが WdfUsbTargetDeviceFormatRequestForControlTransfer を呼び出した場合、このメンバーには、入力データまたは出力データを受け取るメモリ オブジェクトに対するドライバー指定のハンドルが含まれます。

Parameters.DeviceControlTransfer.SetupPacket

ドライバーが WdfUsbTargetDeviceFormatRequestForControlTransfer を呼び出した場合、このメンバーには、ドライバーが指定した WDF_USB_CONTROL_SETUP_PACKET 構造体のアドレスが含まれます。

Parameters.DeviceControlTransfer.Length

ドライバーがコントロール転送を送信するメソッド (WdfUsbTargetDeviceFormatRequestForUrb を除く) を呼び出した場合、このメンバーには送信または受信されたバイト数が含まれます。

ドライバーが WdfUsbTargetDeviceFormatRequestForUrb と呼ばれる場合、ハンドルが Parameters.DeviceUrb.Buffer にある URB から長さの値を取得できます。

Parameters.DeviceUrb

Parameters.DeviceUrb.Buffer

ドライバーが WdfUsbTargetDeviceFormatRequestForUrb を呼び出した場合、このメンバーには 、URB 構造体を含むメモリ オブジェクトに対するドライバー指定のハンドルが含まれます。

Parameters.PipeWrite

Parameters.PipeWrite.Buffer

ドライバーが WdfUsbTargetPipeFormatRequestForWrite を呼び出した場合、このメンバーには、パイプに書き込まれたメモリ オブジェクトに対するドライバー指定のハンドルが含まれます。

Parameters.PipeWrite.Length

ドライバーが パイプに書き込む メソッド ( WdfUsbTargetDeviceFormatRequestForUrb を除く) を呼び出した場合、このメンバーには送信されたバイト数が含まれます。

ドライバーが WdfUsbTargetDeviceFormatRequestForUrb と呼ばれる場合、ハンドルが Parameters.PipeUrb.Buffer にある URB から長さの値を取得できます。

Parameters.PipeWrite.Offset

ドライバーが WdfUsbTargetPipeFormatRequestForWrite を呼び出した場合、このメンバーにはドライバー指定のバッファー オフセットが含まれます。

Parameters.PipeRead

Parameters.PipeRead.Buffer

ドライバーが WdfUsbTargetPipeFormatRequestForRead を呼び出した場合、このメンバーには、パイプから読み取られたデータを含むメモリ オブジェクトへのドライバー指定のハンドルが含まれます。

Parameters.PipeRead.Length

ドライバーがパイプから読み取るメソッドを呼び出してコントロール転送を送信した場合 (WdfUsbTargetDeviceFormatRequestForUrb を除く)、このメンバーには受信したバイト数が含まれます。

ドライバーが WdfUsbTargetDeviceFormatRequestForUrb と呼ばれる場合、ハンドルが Parameters.PipeUrb.Buffer にある URB から長さの値を取得できます。

Parameters.PipeRead.Offset

ドライバーが WdfUsbTargetPipeFormatRequestForRead を呼び出した場合、このメンバーにはドライバー指定のバッファー オフセットが含まれます。

Parameters.PipeUrb

Parameters.PipeUrb.Buffer

ドライバーが WdfUsbTargetPipeFormatRequestForUrb を呼び出した場合、このメンバーには 、URB 構造体を含むメモリ オブジェクトに対するドライバー指定のハンドルが含まれます。

注釈

WDF_USB_REQUEST_COMPLETION_PARAMS構造体は、WDF_REQUEST_COMPLETION_PARAMS構造体のメンバーです。

要件

要件
最小 KMDF バージョン 1.0
最小 UMDF バージョン 2.0
Header wdfusb.h (Wdfusb.h を含む)

こちらもご覧ください

CompletionRoutine

WDF_REQUEST_COMPLETION_PARAMS

WdfRequestGetCompletionParams