共用方式為


STOR_DEVICE_CAPABILITIES_EX結構 (minitape.h)

STOR_DEVICE_CAPABILITIES_EX 結構會向 Storport 驅動程式報告裝置功能,以回應具有 SRB_FUNCTION_PNP 功能的 SCSI 要求區塊 (SRB) 中的功能查詢。 STOR_DEVICE_CAPABILITIESDEVICE_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)

另請參閱

DEVICE_CAPABILITIES

HW_INITIALIZATION_DATASCSI_PNP_REQUEST_BLOCK

StorPortInitialize