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) |