WDF_USB_CONTROL_SETUP_PACKET Union (wdfusb.h)
[Gilt für KMDF und UMDF]
Die WDF_USB_CONTROL_SETUP_PACKET-Struktur beschreibt ein Setuppaket für eine USB-Steuerungsübertragung.
Syntax
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;
Member
Packet
Packet.bm
Packet.bm.Request
Packet.bm.Request.Recipient
Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_RECIPIENT typisierten Wert angegeben wird.
Packet.bm.Request.Reserved
Ein reserviertes Bitfeld. Verwenden Sie dieses Element nicht.
Packet.bm.Request.Type
Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_TYPE typisierten Wert angegeben wird.
Packet.bm.Request.Dir
Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_DIRECTION typisierten Wert angegeben wird.
Packet.bm.Byte
Eine Bitmap im Byteformat, die die Bitfelder Request.Recipient, Request.Reserved, Request.Type und Request.Dir enthält. Verwenden Sie dieses Element als Alternative zum Angeben der einzelnen Bitfelder.
Packet.bRequest
Ein Anforderungstyp. Anforderungstypkonstanten werden in Usb100.h definiert. Weitere Informationen zu Anforderungstypen finden Sie in der USB-Spezifikation.
Packet.wValue
Packet.wValue.Bytes
Packet.wValue.Bytes.LowByte
Das niedrige Byte eines anforderungsspezifischen 2-Byte-Werts. Weitere Informationen zum Angeben von wValue finden Sie in der USB-Spezifikation.
Packet.wValue.Bytes.HiByte
Das hohe Byte eines anforderungsspezifischen 2-Byte-Werts.
Packet.wValue.Value
Ein 2-Byte-Wert, der die Werte Bytes.LowByte und Bytes.HiByte enthält. Verwenden Sie diesen Member als Alternative zum Angeben einzelner Werte mit niedrigen und hohen Bytewerten.
Packet.wIndex
Packet.wIndex.Bytes
Packet.wIndex.Bytes.LowByte
Das niedrige Byte eines anforderungsspezifischen 2-Byte-Werts. Weitere Informationen zum Angeben von wValue finden Sie in der USB-Spezifikation.
Packet.wIndex.Bytes.HiByte
Das hohe Byte eines anforderungsspezifischen 2-Byte-Werts.
Packet.wIndex.Value
Ein 2-Byte-Wert, der die Werte Bytes.LowByte und Bytes.HiByte enthält. Verwenden Sie diesen Member als Alternative zum Angeben einzelner Werte mit niedrigen und hohen Bytewerten.
Packet.wLength
Die Anzahl der zu übertragenden Bytes, falls zutreffend. Weitere Informationen zu diesem Wert finden Sie in der USB-Spezifikation. Diesen Wert legt das Framework fest.
Generic
Generic.Bytes[8]
Ein 8-Byte-Wert, der das gesamte Setuppaket darstellt. Sie können dieses Element als Alternative zum Angeben einzelner Strukturmember verwenden.
Hinweise
Die WDF_USB_CONTROL_SETUP_PACKET-Struktur wird als Eingabe für die Methoden WdfUsbTargetDeviceSendControlTransferSynchronously und WdfUsbTargetDeviceFormatRequestForControlTransfer verwendet.
Um eine WDF_USB_CONTROL_SETUP_PACKET Struktur zu initialisieren, sollte der Treiber eine der folgenden Funktionen aufrufen:
Anforderungen
Anforderung | Wert |
---|---|
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfusb.h (einschließlich Wdfusb.h) |