共用方式為


WDF_DEVICE_PNP_CAPABILITIES 結構 (wdfdevice.h)

[適用於 KMDF 和 UMDF]

WDF_DEVICE_PNP_CAPABILITIES 結構描述裝置 隨插即用 功能。

語法

typedef struct _WDF_DEVICE_PNP_CAPABILITIES {
  ULONG         Size;
  WDF_TRI_STATE LockSupported;
  WDF_TRI_STATE EjectSupported;
  WDF_TRI_STATE Removable;
  WDF_TRI_STATE DockDevice;
  WDF_TRI_STATE UniqueID;
  WDF_TRI_STATE SilentInstall;
  WDF_TRI_STATE SurpriseRemovalOK;
  WDF_TRI_STATE HardwareDisabled;
  WDF_TRI_STATE NoDisplayInUI;
  ULONG         Address;
  ULONG         UINumber;
} WDF_DEVICE_PNP_CAPABILITIES, *PWDF_DEVICE_PNP_CAPABILITIES;

成員

Size

這個結構的大小,以位元組為單位。

LockSupported

WDF_TRI_STATE型別值,指出如果設定為 WdfTrue,裝置可以在其位置中鎖定,以防止退出。 (這項功能會停用從其位置退出裝置,而不是從 device.) 退出媒體。如需WDF_TRI_STATE類型值的詳細資訊,請參閱下列一節。

EjectSupported

WDF_TRI_STATE型別值,指出如果設定為 WdfTrue,裝置可以從其位置退出。 (這項功能可讓裝置從其位置退出,而不會從 device.) 退出媒體

Removable

WDF_TRI_STATE型別值,指出當系統執行時,如果設定為 WdfTrue,則可以移除裝置。 如果 Removable 設定為 WdfTrue而 SurpriseRemovalOK 設定為 WdfFalse,則使用者應該使用系統的 Unplug 或退出硬體計畫。

DockDevice

WDF_TRI_STATE型別值,指出如果設定為 WdfTrue,則裝置是停駐站。

UniqueID

WDF_TRI_STATE型別值,指出如果設定為 WdfTrue,則裝置的實例標識碼對整個系統而言是唯一的。 如果 UniqueID 設定為 WdfFalse,則實例識別碼只會對裝置的總線是唯一的。 如需實例標識碼的詳細資訊,請參閱 裝置識別字串

SilentInstall

WDF_TRI_STATE類型值,指出如果設定為 WdfTrue,該 裝置管理員 在安裝裝置期間不應該顯示對話方塊。

SurpriseRemovalOK

WDF_TRI_STATE類型值,指出如果設定為 WdfTrue (,且 Removable 也設定為 WdfTrue) ,則使用者可以移除裝置,而不需使用系統的 Unplug 或退出硬體程式。

HardwareDisabled

WDF_TRI_STATE類型值,指出如果設定為 WdfTrue,則表示裝置已停用。

NoDisplayInUI

WDF_TRI_STATE類型值,指出如果設定為 WdfTrue,該 裝置管理員 不應該顯示裝置。

Address

指出裝置在其總線上所在位置的位址。

這個數位的解譯是總線特定的。 如果位址未知或總線驅動程式不支援位址,則總線驅動程式會將其預設值保留為 0xFFFFFFFF (-1 ) 。

下列清單描述特定總線驅動程式在其子裝置的 Address 成員中儲存的資訊:

匯流排 Description
1394 不會提供地址,因為位址是變動性的。 默認為 0xFFFFFFFF。
EISA 插槽號碼 (0-F) 。
IDE 針對 IDE 裝置,位址包含目標標識碼和 LUN。 針對 IDE 通道,位址為零或一個 (0 = 主要通道,1 = 次要通道) 。
ISApnp 不提供位址。 默認為 0xFFFFFFFF。
PC Card (PCMCIA) 套接字編號 (通常會0x00或0x40) 。
PCI 高字中的裝置編號,以及低字中的函式編號。
SCSI 目標標識碼。
USB 連接埠號碼。

UINumber

與裝置相關聯的數位,而且可以在使用者介面中顯示。 此數位通常是使用者感知的插槽編號,例如面板上位置旁列印的數位,或其他可協助使用者找到裝置的數位。 如果 UINumber 未知,或提供數位無法協助使用者識別裝置的位置,驅動程式會將此值設定為 -1。

備註

數個成員會使用 WDF_TRI_STATE 類型。 對於這些成員, WdfTrue 的值表示裝置支援功能,而 WdfFalse 的值表示它沒有。 WdfUseDefault 的值表示架構將使用堆疊中較低驅動程式所提供的值。 例如,如果總線驅動程序針對LockSupported指定WdfTrue,而裝置的函式驅動程式指定WdfUseDefault,架構就會儲存 WdfTrue 作為功能。

WDF_DEVICE_PNP_CAPABILITIES 結構可用來做為 WdfDeviceSetPnpCapabilities 的輸入。

若要初始化WDF_DEVICE_PNP_CAPABILITIES結構,驅動程式應該呼叫 WDF_DEVICE_PNP_CAPABILITIES_INIT

規格需求

需求
最小 KMDF 版本 1.0
最低UMDF版本 2.0
標頭 wdfdevice.h (包含 Wdf.h)

另請參閱

WdfDeviceSetPowerCapabilities

WdfPdoInitAssignRawDevice