Compartir a través de


estructura WDF_USB_REQUEST_COMPLETION_PARAMS (wdfusb.h)

[Se aplica a KMDF y UMDF]

La estructura WDF_USB_REQUEST_COMPLETION_PARAMS contiene parámetros asociados a la finalización de una solicitud de E/S para un dispositivo USB.

Sintaxis

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;

Miembros

UsbdStatus

Valor de estado con tipo USBD_STATUS que devolvió el destino de E/S.

Type

Valores con tipo WDF_USB_REQUEST_TYPE que identifican el tipo de solicitud.

Parameters

Parameters.DeviceString

Parameters.DeviceString.Buffer

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForString, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que recibe la cadena Unicode.

Parameters.DeviceString.LangID

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForString, este miembro contiene el identificador de idioma proporcionado por el controlador.

Parameters.DeviceString.StringIndex

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForString, este miembro contiene el índice de cadena proporcionado por el controlador.

Parameters.DeviceString.RequiredSize

Si el controlador ha llamado a cualquier método que obtenga las cadenas Unicode de un dispositivo (excepto WdfUsbTargetDeviceFormatRequestForUrb), este miembro contiene el tamaño necesario del búfer que especifica Parameters.DeviceString.Buffer .

Si el controlador llamado WdfUsbTargetDeviceFormatRequestForUrb, puede obtener el valor de tamaño necesario del URB cuyo identificador se encuentra en Parameters.DeviceUrb.Buffer.

Parameters.DeviceControlTransfer

Parameters.DeviceControlTransfer.Buffer

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForControlTransfer, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que recibe datos de entrada o salida.

Parameters.DeviceControlTransfer.SetupPacket

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForControlTransfer, este miembro contiene la dirección de la estructura de WDF_USB_CONTROL_SETUP_PACKET proporcionada por el controlador.

Parameters.DeviceControlTransfer.Length

Si el controlador ha llamado a cualquier método que envía una transferencia de control (excepto WdfUsbTargetDeviceFormatRequestForUrb), este miembro contiene el número de bytes enviados o recibidos.

Si el controlador llamado WdfUsbTargetDeviceFormatRequestForUrb, puede obtener el valor de longitud del URB cuyo identificador se encuentra en Parameters.DeviceUrb.Buffer.

Parameters.DeviceUrb

Parameters.DeviceUrb.Buffer

Si el controlador ha llamado a WdfUsbTargetDeviceFormatRequestForUrb, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que contiene una estructura URB .

Parameters.PipeWrite

Parameters.PipeWrite.Buffer

Si el controlador ha llamado a WdfUsbTargetPipeFormatRequestForWrite, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que se escribió en la canalización.

Parameters.PipeWrite.Length

Si el controlador ha llamado a cualquier método que escribe en una canalización (excepto WdfUsbTargetDeviceFormatRequestForUrb), este miembro contiene el número de bytes enviados.

Si el controlador llamado WdfUsbTargetDeviceFormatRequestForUrb, puede obtener el valor de longitud del URB cuyo identificador se encuentra en Parameters.PipeUrb.Buffer.

Parameters.PipeWrite.Offset

Si el controlador ha llamado a WdfUsbTargetPipeFormatRequestForWrite, este miembro contiene el desplazamiento del búfer proporcionado por el controlador.

Parameters.PipeRead

Parameters.PipeRead.Buffer

Si el controlador ha llamado a WdfUsbTargetPipeFormatRequestForRead, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que contiene datos leídos de la canalización.

Parameters.PipeRead.Length

Si el controlador ha llamado a cualquier método que lee de una canalización envía una transferencia de control (excepto WdfUsbTargetDeviceFormatRequestForUrb), este miembro contiene el número de bytes recibidos.

Si el controlador llamado WdfUsbTargetDeviceFormatRequestForUrb, puede obtener el valor de longitud del URB cuyo identificador se encuentra en Parameters.PipeUrb.Buffer.

Parameters.PipeRead.Offset

Si el controlador ha llamado a WdfUsbTargetPipeFormatRequestForRead, este miembro contiene el desplazamiento del búfer proporcionado por el controlador.

Parameters.PipeUrb

Parameters.PipeUrb.Buffer

Si el controlador ha llamado a WdfUsbTargetPipeFormatRequestForUrb, este miembro contiene el identificador proporcionado por el controlador al objeto de memoria que contiene una estructura URB .

Comentarios

La estructura WDF_USB_REQUEST_COMPLETION_PARAMS es un miembro de la estructura WDF_REQUEST_COMPLETION_PARAMS .

Requisitos

Requisito Value
Versión mínima de KMDF 1.0
Versión mínima de UMDF 2.0
Encabezado wdfusb.h (incluya Wdfusb.h)

Consulte también

CompletionRoutine

WDF_REQUEST_COMPLETION_PARAMS

WdfRequestGetCompletionParams