Freigeben über


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;

Angehörige

Packet

Packet.bm

Packet.bm.Request

Packet.bm.Request.Recipient

Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_RECIPIENT-typed-Wert angegeben wird.

Packet.bm.Request.Reserved

Ein reserviertes Bitfeld. Verwenden Sie dieses Mitglied nicht.

Packet.bm.Request.Type

Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_TYPE-typed-Wert angegeben wird.

Packet.bm.Request.Dir

Ein Bitfeld, das durch einen WDF_USB_BMREQUEST_DIRECTION-typed-Wert angegeben wird.

Packet.bm.Byte

Eine Bitmap mit Bytegröße, die die Request.Recipient, Request.Reserved, Request.Typeund Request.Dir Bitfelder enthält. Verwenden Sie dieses Element als Alternative zum Angeben der einzelnen Bitfelder.

Packet.bRequest

Ein Anforderungstyp. Anforderungstypkonstanten werden in usb100.hdefiniert. Weitere Informationen zu Anforderungstypen finden Sie in der USB-Spezifikation.

Packet.wValue

Packet.wValue.Bytes

Packet.wValue.Bytes.LowByte

Das niedrige Byte eines 2-Byte-Werts, der anforderungsspezifisch ist. Weitere Informationen zum Angeben von wValuefinden Sie in der USB-Spezifikation.

Packet.wValue.Bytes.HiByte

Das hohe Byte eines 2-Byte-Werts, der anforderungsspezifisch ist.

Packet.wValue.Value

Ein 2-Byte-Wert, der die werte Bytes.LowByte und Bytes.HiByte- enthält. Verwenden Sie dieses Element als Alternative zum Angeben einzelner Byte- und Bytewerte mit geringem Bytewert.

Packet.wIndex

Packet.wIndex.Bytes

Packet.wIndex.Bytes.LowByte

Das niedrige Byte eines 2-Byte-Werts, der anforderungsspezifisch ist. Weitere Informationen zum Angeben von wValuefinden Sie in der USB-Spezifikation.

Packet.wIndex.Bytes.HiByte

Das hohe Byte eines 2-Byte-Werts, der anforderungsspezifisch ist.

Packet.wIndex.Value

Ein 2-Byte-Wert, der die werte Bytes.LowByte und Bytes.HiByte- enthält. Verwenden Sie dieses Element als Alternative zum Angeben einzelner Byte- und Bytewerte mit geringem Bytewert.

Packet.wLength

Die Anzahl der zu übertragenden Bytes, falls zutreffend. Weitere Informationen zu diesem Wert finden Sie in der USB-Spezifikation. Das Framework legt diesen Wert 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.

Bemerkungen

Die WDF_USB_CONTROL_SETUP_PACKET-Struktur wird als Eingabe für die WdfUsbTargetDeviceSendControlTransferSynchronously und WdfUsbTargetDeviceFormatRequestForControlTransfer Methoden verwendet.

Um eine WDF_USB_CONTROL_SETUP_PACKET Struktur zu initialisieren, sollte der Treiber eine der folgenden Funktionen aufrufen:

Anforderungen

Anforderung Wert
Minimale KMDF-Version 1.0
Mindest-UMDF-Version 2.0
Header- wdfusb.h (include Wdfusb.h)

Siehe auch

WDF_USB_BMREQUEST_DIRECTION

WDF_USB_BMREQUEST_RECIPIENT

WDF_USB_BMREQUEST_TYPE

WdfUsbTargetDeviceFormatRequestForControlTransfer

WdfUsbTargetDeviceSendControlTransferSynchronously