union WDF_USB_CONTROL_SETUP_PACKET (wdfusb.h)
[S’applique à KMDF et UMDF]
La structure WDF_USB_CONTROL_SETUP_PACKET décrit un paquet d’installation pour un transfert de contrôle USB.
Syntaxe
typedef union _WDF_USB_CONTROL_SETUP_PACKET {
struct {
union {
struct {
BYTE Recipient : 2;
BYTE Reserved : 3;
BYTE Type : 2;
BYTE Dir : 1;
} Request;
BYTE Byte;
} bm;
BYTE bRequest;
union {
struct {
BYTE LowByte;
BYTE HiByte;
} Bytes;
USHORT Value;
} wValue;
union {
struct {
BYTE LowByte;
BYTE HiByte;
} Bytes;
USHORT Value;
} wIndex;
USHORT wLength;
} Packet;
struct {
BYTE Bytes[8];
} Generic;
} WDF_USB_CONTROL_SETUP_PACKET, *PWDF_USB_CONTROL_SETUP_PACKET;
Membres
Packet
Packet.bm
Packet.bm.Request
Packet.bm.Request.Recipient
Champ bit spécifié par une valeur de type WDF_USB_BMREQUEST_RECIPIENT.
Packet.bm.Request.Reserved
Champ de bits réservé. N’utilisez pas ce membre.
Packet.bm.Request.Type
Champ bit spécifié par une valeur de type WDF_USB_BMREQUEST_TYPE.
Packet.bm.Request.Dir
Champ bit spécifié par une valeur de type WDF_USB_BMREQUEST_DIRECTION.
Packet.bm.Byte
Bitmap de taille octet qui contient les champs de bits Request.Recipient, Request.Reserved, Request.Type et Request.Dir . Utilisez ce membre comme alternative à la spécification des champs de bits individuels.
Packet.bRequest
Type de requête. Les constantes de type de requête sont définies dans Usb100.h. Pour plus d’informations sur les types de requêtes, consultez la spécification USB.
Packet.wValue
Packet.wValue.Bytes
Packet.wValue.Bytes.LowByte
Octet faible d’une valeur de 2 octets spécifique à la demande. Pour plus d’informations sur la spécification de wValue, consultez la spécification USB.
Packet.wValue.Bytes.HiByte
Octet élevé d’une valeur spécifique à la demande de 2 octets.
Packet.wValue.Value
Valeur de 2 octets qui contient les valeurs Bytes.LowByte et Bytes.HiByte . Utilisez ce membre comme alternative à la spécification de valeurs individuelles d’octets bas et d’octets élevés.
Packet.wIndex
Packet.wIndex.Bytes
Packet.wIndex.Bytes.LowByte
Octet faible d’une valeur de 2 octets spécifique à la demande. Pour plus d’informations sur la spécification de wValue, consultez la spécification USB.
Packet.wIndex.Bytes.HiByte
Octet élevé d’une valeur spécifique à la demande de 2 octets.
Packet.wIndex.Value
Valeur de 2 octets qui contient les valeurs Bytes.LowByte et Bytes.HiByte . Utilisez ce membre comme alternative à la spécification de valeurs individuelles d’octets bas et d’octets élevés.
Packet.wLength
Nombre d’octets à transférer, le cas échéant. Pour plus d’informations sur cette valeur, consultez la spécification USB. L’infrastructure définit cette valeur.
Generic
Generic.Bytes[8]
Valeur de 8 octets qui représente l’ensemble du paquet d’installation. Vous pouvez utiliser ce membre comme alternative à la spécification de membres de structure individuels.
Remarques
La structure WDF_USB_CONTROL_SETUP_PACKET est utilisée comme entrée dans les méthodes WdfUsbTargetDeviceSendControlTransferSynchronously et WdfUsbTargetDeviceFormatRequestForControlTransfer .
Pour initialiser une structure WDF_USB_CONTROL_SETUP_PACKET , le pilote doit appeler l’une des fonctions suivantes :
Configuration requise
Condition requise | Valeur |
---|---|
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfusb.h (inclure Wdfusb.h) |