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 status typée USBD_STATUS que la cible d’E/S a retournée.
Type
Valeurs de type WDF_USB_REQUEST_TYPE 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 langue 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é une méthode qui obtient les chaînes Unicode d’un appareil (à l’exception de WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient la taille requise de la mémoire tampon spécifiée par Parameters.DeviceString.Buffer .
Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de taille requise à partir de l’URB dont le handle est 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 les 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 transfert de contrôle (à l’exception de WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient le nombre d’octets qui ont été envoyés ou reçus.
Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de longueur de l’URB dont le handle est 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 pour l’objet de mémoire qui a été écrit dans le canal.
Parameters.PipeWrite.Length
Si le pilote a appelé une méthode qui écrit dans un canal (à l’exception de WdfUsbTargetDeviceFormatRequestForUrb), ce membre contient le nombre d’octets qui ont été envoyés.
Si le pilote appelé WdfUsbTargetDeviceFormatRequestForUrb, il peut obtenir la valeur de longueur de l’URB dont le handle est 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 les 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 (à l’exception de 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 est 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 .
Configuration requise
Condition requise | Valeur |
---|---|
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfusb.h (inclure Wdfusb.h) |