Partager via


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 de bits spécifié par une valeur WDF_USB_BMREQUEST_RECIPIENT-typée.

Packet.bm.Request.Reserved

Champ de bits réservé. N’utilisez pas ce membre.

Packet.bm.Request.Type

Champ de bits spécifié par une valeur WDF_USB_BMREQUEST_TYPE-typée.

Packet.bm.Request.Dir

Champ de bits spécifié par une valeur WDF_USB_BMREQUEST_DIRECTION-typée.

Packet.bm.Byte

Bitmap de taille d’octet qui contient les Request.Recipient, Request.Reserved, Request.Typeet Request.Dir bits. 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 spécifique à une requête de 2 octets. Pour plus d’informations sur la spécification wValue, consultez la spécification USB.

Packet.wValue.Bytes.HiByte

Octet élevé d’une valeur spécifique à une requête de 2 octets.

Packet.wValue.Value

Valeur de 2 octets qui contient les valeurs Bytes.LowByte et valeurs Bytes.HiByte. Utilisez ce membre comme alternative à la spécification de valeurs individuelles de bas octets et d’octets élevés.

Packet.wIndex

Packet.wIndex.Bytes

Packet.wIndex.Bytes.LowByte

Octet faible d’une valeur spécifique à une requête de 2 octets. Pour plus d’informations sur la spécification wValue, consultez la spécification USB.

Packet.wIndex.Bytes.HiByte

Octet élevé d’une valeur spécifique à une requête de 2 octets.

Packet.wIndex.Value

Valeur de 2 octets qui contient les valeurs Bytes.LowByte et valeurs Bytes.HiByte. Utilisez ce membre comme alternative à la spécification de valeurs individuelles de bas octets 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’intégralité 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 aux méthodes WdfUsbTargetDeviceSendControlTransferSynchronously et WdfUsbTargetDeviceFormatRequestForControlTransfer.

Pour initialiser une structure WDF_USB_CONTROL_SETUP_PACKET, le pilote doit appeler l’une des fonctions suivantes :

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

WDF_USB_BMREQUEST_DIRECTION

WDF_USB_BMREQUEST_RECIPIENT

WDF_USB_BMREQUEST_TYPE

WdfUsbTargetDeviceFormatRequestForControlTransfer

WdfUsbTargetDeviceSendControlTransferSynchronously