共用方式為


WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE函式 (wdfusb.h)

[適用於 KMDF 和 UMDF]

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE函式會初始化 USB 控制項傳輸的WDF_USB_CONTROL_SETUP_PACKET結構,以設定或清除裝置功能。

語法

void WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE(
  [out] PWDF_USB_CONTROL_SETUP_PACKET Packet,
  [in]  WDF_USB_BMREQUEST_RECIPIENT   BmRequestRecipient,
  [in]  USHORT                        FeatureSelector,
  [in]  USHORT                        Index,
  [in]  BOOLEAN                       SetFeature
);

參數

[out] Packet

WDF_USB_CONTROL_SETUP_PACKET 結構的指標。

[in] BmRequestRecipient

儲存在 WDF_USB_CONTROL_SETUP_PACKET 結構的Packet.bm.Request.Recipient成員中的WDF_USB_BMREQUEST_RECIPIENT型別值。

[in] FeatureSelector

儲存在 WDF_USB_CONTROL_SETUP_PACKET 結構的Packet.wValue.Value成員中的功能特定值。

[in] Index

功能特定的索引值,儲存在WDF_USB_CONTROL_SETUP_PACKET 結構的Packet.wIndex.Value成員中。

[in] SetFeature

布爾值,如果為 TRUE,表示將設定指定的功能。 如果為 FALSE,則會清除指定的功能。

傳回值

備註

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE 函式會執行下列動作:

  1. WDF_USB_CONTROL_SETUP_PACKET 結構。
  2. Packet.bm.Request.Type 成員設定為 BmRequestStandard
  3. Packet.bm.Request.Dir 成員設定為 BmRequestDeviceToDevice
  4. 根據 SetFeature 自變數,將 Packet.bRequest 成員設定為「設定功能」或「清除功能」要求值。
  5. 使用 WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE 函式的輸入自變數來設定其他結構成員。
若要初始化 WDF_USB_CONTROL_SETUP_PACKET 結構,驅動程式應該呼叫下列其中一個函式:

範例

下列程式代碼範例會初始化 WDF_USB_CONTROL_SETUP_PACKET 結構。

WDF_USB_CONTROL_SETUP_PACKET packet;

WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE(
                                          &packet,
                                          BMREQUEST_TO_DEVICE,
                                          USB_DEVICE_DESCRIPTOR_TYPE,
                                          0,
                                          FALSE
                                          );

規格需求

需求
目標平台 Universal
最低 KMDF 版本 1.0
最低UMDF版本 2.0
標頭 wdfusb.h (包含 Wdfusb.h)

另請參閱

WDF_USB_BMREQUEST_RECIPIENT

WDF_USB_CONTROL_SETUP_PACKET

WDF_USB_CONTROL_SETUP_PACKET_INIT

WDF_USB_CONTROL_SETUP_PACKET_INIT_CLASS

WDF_USB_CONTROL_SETUP_PACKET_INIT_GET_STATUS

WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR