STOR_DEVICE_CAPABILITIES_EX結構 (minitape.h)
STOR_DEVICE_CAPABILITIES_EX 結構會向 Storport 驅動程式報告裝置功能,以回應具有 SRB_FUNCTION_PNP 功能的 SCSI 要求區塊 (SRB) 中的功能查詢。 STOR_DEVICE_CAPABILITIES 是 DEVICE_CAPABILITIES 結構的子集,其中包含與存儲設備相關的成員。
語法
typedef struct _STOR_DEVICE_CAPABILITIES_EX {
USHORT Version;
USHORT Size;
ULONG DeviceD1 : 1;
ULONG DeviceD2 : 1;
ULONG LockSupported : 1;
ULONG EjectSupported : 1;
ULONG Removable : 1;
ULONG DockDevice : 1;
ULONG UniqueID : 1;
ULONG SilentInstall : 1;
ULONG RawDeviceOK : 1;
ULONG SurpriseRemovalOK : 1;
ULONG NoDisplayInUI : 1;
ULONG DefaultWriteCacheEnabled : 1;
ULONG Reserved0 : 20;
ULONG Address;
ULONG UINumber;
ULONG Reserved1[2];
} STOR_DEVICE_CAPABILITIES_EX, *PSTOR_DEVICE_CAPABILITIES_EX;
成員
Version
指定結構的版本。 Storport 會將此字段設定為STOR_DEVICE_CAPABILITIES_EX_VERSION_1。
Size
指定結構的大小。 Storport 會將此字位設定為 sizeof(STOR_DEVICE_CAPABILITIES_EX)
。
DeviceD1
指定裝置硬體是否支援 D1 電源狀態。 迷你埠驅動程式將此位設定為 0。
DeviceD2
指定裝置硬體是否支援 D2 電源狀態。 迷你埠驅動程式將此位設定為 0。
LockSupported
指定裝置是否支援防止裝置退出的實體裝置鎖定。 此成員與退出 LUN 或單位裝置有關。
EjectSupported
指定當系統處於 PowerSystemWorking 狀態時,裝置是否支援軟體控制的裝置退出。 此成員與退出 LUN 或單位裝置有關。
Removable
指定是否可以從其立即父系動態移除裝置。 如果 卸除式 設為 true true,則裝置不屬於與其父系相同的實體物件。
如果 卸除式 設為 TRUE,除非 SurpriseRemovalOK 也會設定 為 TRUE,否則裝置會顯示在 [卸除式] 或 [退出硬體] 程式中。
DockDevice
指定裝置是否為停駐周邊。
UniqueID
指定裝置的實例識別碼是否為全系統的唯一標識符。 如果實例標識碼只在總線範圍內是唯一的,則這個位是清楚的。
SilentInstall
指定 設備管理員 是否應該隱藏所有安裝對話框;除了必要對話框,例如「找不到相容的驅動程式」。
RawDeviceOK
指定如果沒有功能驅動程式,基礎總線的驅動程式是否可以驅動裝置(例如,傳遞模式中的 SCSI 裝置)。 此作業模式稱為原始模式。
SurpriseRemovalOK
指定裝置的迷你埠驅動程式是否可以處理在 Storport 可以傳送 SRB_FUNCTION_PNP StorRemoveDevice 作為 SCSI_PNP_REQUEST_BLOCK 結構中的 PnPAction 時移除裝置的情況。 如果 SurpriseRemovalOK 設為 TRUE,則不論其驅動程式處於的狀態為何,裝置都可以從其立即父系安全地移除。
NoDisplayInUI
請勿在使用者介面中顯示裝置。 如果設定此位,即使裝置存在但無法啟動,裝置也不會顯示在使用者介面中。 迷你埠驅動程式不會設定此位。
DefaultWriteCacheEnabled
預設會在初始化時啟用存儲設備的寫入快取。
Reserved0
保留的位。
Address
儲存單位裝置的 LUN 位址。
UINumber
指定與可在使用者介面中顯示的裝置相關聯的數位。
此數位可能是選擇的標識碼值,讓使用者更容易找到實體裝置。 當 UINumber 未知時,迷你埠驅動程式可以將這個成員設為其預設值 0xFFFFFFFF。
Reserved1[2]
保留的位。
言論
當迷你埠驅動程式在其 HwStorStartIo 例程中收到 SRB 時,SRB 函式SRB_FUNCTION_PNP,SRB 會格式化為 SCSI_PNP_REQUEST_BLOCK 結構。 如果 SRB 的 PnPAction 成員 StorQueryCapabilities,迷你埠可以在 SRB 的 DataBuffer 成員中傳回 STOR_DEVICE_CAPABILITIES_EX 結構。
裝置的退出、移除和安裝特性會設定在 STOR_DEVICE_CAPABILITIES_EX 結構中。 若要支援使用此結構,miniport 必須在 FeatureSupport 旗標 HW_INITIALIZATION_DATA 成員中設定STOR_FEATURE_FULL_PNP_DEVICE_CAPABILITIES旗標,才能呼叫 storPortInitialize。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 8 |
標頭 | minitape.h (包括 Storport.h、Minitape.h、Srb.h) |