WDF_USB_CONTROL_SETUP_PACKET_INIT 函数 (wdfusb.h)

[适用于 KMDF 和 UMDF]

WDF_USB_CONTROL_SETUP_PACKET_INIT 函数为标准 USB 控制传输初始化WDF_USB_CONTROL_SETUP_PACKET结构。

语法

void WDF_USB_CONTROL_SETUP_PACKET_INIT(
  [out] PWDF_USB_CONTROL_SETUP_PACKET Packet,
  [in]  WDF_USB_BMREQUEST_DIRECTION   Direction,
  [in]  WDF_USB_BMREQUEST_RECIPIENT   Recipient,
  [in]  BYTE                          Request,
  [in]  USHORT                        Value,
  [in]  USHORT                        Index
);

参数

[out] Packet

指向 WDF_USB_CONTROL_SETUP_PACKET 结构的指针。

[in] Direction

存储在 WDF_USB_CONTROL_SETUP_PACKET 结构的 Packet.bm.Request.Dir 成员中的WDF_USB_BMREQUEST_DIRECTION类型值。

[in] Recipient

存储在 WDF_USB_CONTROL_SETUP_PACKET 结构的 Packet.bm.Request.Recipient 成员中的WDF_USB_BMREQUEST_RECIPIENT类型值。

[in] Request

存储在 WDF_USB_CONTROL_SETUP_PACKET 结构的 Packet.bRequest 成员中的请求类型常量。

[in] Value

存储在 WDF_USB_CONTROL_SETUP_PACKET 结构的 Packet.wValue.Value 成员中的特定于请求的值。

[in] Index

存储在 WDF_USB_CONTROL_SETUP_PACKET 结构的 Packet.wIndex.Value 成员中的特定于请求的索引值。

返回值

备注

WDF_USB_CONTROL_SETUP_PACKET_INIT 函数执行以下操作:

  1. WDF_USB_CONTROL_SETUP_PACKET 结构归零。
  2. Packet.bm.Request.Type 成员设置为 BmRequestStandard
  3. 使用 WDF_USB_CONTROL_SETUP_PACKET_INIT 函数的输入参数设置其他结构成员。
若要初始化 WDF_USB_CONTROL_SETUP_PACKET 结构,驱动程序应调用以下函数之一:

示例

下面的代码示例初始化 WDF_USB_CONTROL_SETUP_PACKET 结构。

WDF_USB_CONTROL_SETUP_PACKET  packet;

WDF_USB_CONTROL_SETUP_PACKET_INIT(
                                  &packet,
                                  BMREQUEST_HOST_TO_DEVICE,
                                  BMREQUEST_TO_DEVICE,
                                  0,
                                  0,
                                  0
                                  );

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfusb.h (包括 Wdfusb.h)

另请参阅

WDF_USB_BMREQUEST_DIRECTION

WDF_USB_BMREQUEST_RECIPIENT

WDF_USB_CONTROL_SETUP_PACKET

WDF_USB_CONTROL_SETUP_PACKET_INIT_CLASS

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE

WDF_USB_CONTROL_SETUP_PACKET_INIT_GET_STATUS

WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR