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) |