Partager via


structure WDF_USB_REQUEST_COMPLETION_PARAMS (wdfusb.h)

[S’applique à KMDF et UMDF]

La structure WDF_USB_REQUEST_COMPLETION_PARAMS contient des paramètres associés à l’achèvement d’une demande d’E/S pour un périphérique USB.

Syntaxe

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;

Membres

UsbdStatus

Valeur d’état USBD_STATUS-typée retournée par la cible d’E/S.

Type

Valeurs WDF_USB_REQUEST_TYPE-typées qui identifient le type de requête.

Parameters

Parameters.DeviceString

Parameters.DeviceString.Buffer

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForString, ce membre contient le handle fourni par le pilote à l’objet mémoire qui reçoit la chaîne Unicode.

Parameters.DeviceString.LangID

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForString, ce membre contient l’identificateur de langage fourni par le pilote.

Parameters.DeviceString.StringIndex

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForString, ce membre contient l’index de chaîne fourni par le pilote.

Parameters.DeviceString.RequiredSize

Si le pilote a appelé n’importe quelle méthode qui obtient les chaînes Unicode d’un appareil (sauf WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient la taille requise de la mémoire tampon qui Parameters.DeviceString.Buffer spécifie.

Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de taille requise à partir de l’URB dont le handle se trouve dans Parameters.DeviceUrb.Buffer.

Parameters.DeviceControlTransfer

Parameters.DeviceControlTransfer.Buffer

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForControlTransfer, ce membre contient le handle fourni par le pilote à l’objet mémoire qui reçoit des données d’entrée ou de sortie.

Parameters.DeviceControlTransfer.SetupPacket

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForControlTransfer, ce membre contient l’adresse de la structure WDF_USB_CONTROL_SETUP_PACKET fournie par le pilote.

Parameters.DeviceControlTransfer.Length

Si le pilote a appelé une méthode qui envoie un de transfert de contrôle (sauf WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient le nombre d’octets envoyés ou reçus.

Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de longueur de l’URB dont le handle se trouve dans Parameters.DeviceUrb.Buffer.

Parameters.DeviceUrb

Parameters.DeviceUrb.Buffer

Si le pilote a appelé WdfUsbTargetDeviceFormatRequestForUrb, ce membre contient le handle fourni par le pilote à l’objet mémoire qui contient une structure URB.

Parameters.PipeWrite

Parameters.PipeWrite.Buffer

Si le pilote a appelé WdfUsbTargetPipeFormatRequestForWrite, ce membre contient le handle fourni par le pilote sur l’objet mémoire écrit dans le canal.

Parameters.PipeWrite.Length

Si le pilote a appelé n’importe quelle méthode qui écrit dans un canal (sauf WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient le nombre d’octets envoyés.

Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de longueur de l’URB dont le handle se trouve dans Parameters.PipeUrb.Buffer.

Parameters.PipeWrite.Offset

Si le pilote a appelé WdfUsbTargetPipeFormatRequestForWrite, ce membre contient le décalage de mémoire tampon fourni par le pilote.

Parameters.PipeRead

Parameters.PipeRead.Buffer

Si le pilote a appelé WdfUsbTargetPipeFormatRequestForRead, ce membre contient le handle fourni par le pilote à l’objet mémoire qui contient des données lues à partir du canal.

Parameters.PipeRead.Length

Si le pilote a appelé une méthode qui lit à partir d’un canal envoie un transfert de contrôle (sauf WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient le nombre d’octets reçus.

Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de longueur de l’URB dont le handle se trouve dans Parameters.PipeUrb.Buffer.

Parameters.PipeRead.Offset

Si le pilote a appelé WdfUsbTargetPipeFormatRequestForRead, ce membre contient le décalage de mémoire tampon fourni par le pilote.

Parameters.PipeUrb

Parameters.PipeUrb.Buffer

Si le pilote a appelé WdfUsbTargetPipeFormatRequestForUrb, ce membre contient le handle fourni par le pilote à l’objet mémoire qui contient une structure URB.

Remarques

La structure WDF_USB_REQUEST_COMPLETION_PARAMS est membre de la structure WDF_REQUEST_COMPLETION_PARAMS.

Exigences

Exigence Valeur
version minimale de KMDF 1.0
version minimale de UMDF 2.0
d’en-tête wdfusb.h (include Wdfusb.h)

Voir aussi

CompletionRoutine

WDF_REQUEST_COMPLETION_PARAMS

WdfRequestGetCompletionParams