STOR_DEVICE_CAPABILITIES_EX 結構 (srb.h)

STOR_DEVICE_CAPABILITIES_EX結構會將裝置功能報告給 SCSI 埠驅動程式,以回應 SCSI 要求區塊中的功能查詢, (SRB) 函式為 SRB_FUNCTION_PNP。 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 (STOR_DEVICE_CAPABILITIES_EX) sizeof

DeviceD1

指定裝置硬體是否支援 D1 電源狀態。 迷你埠驅動程式將此位設定為 0。

DeviceD2

指定裝置硬體是否支援 D2 電源狀態。 迷你埠驅動程式將此位設定為 0。

LockSupported

指定裝置是否支援防止裝置退出的實體裝置鎖定。 此成員與退出 LUN 或單位裝置有關。

EjectSupported

指定當系統處於 PowerSystemWorking 狀態時,裝置是否支援軟體控制的裝置退出。 此成員與退出 LUN 或單位裝置有關。

Removable

指定是否可以從裝置的立即父代動態移除。 如果 卸載式 設定為 TRUE:

  • 裝置不屬於與其父系相同的實體物件。
  • 除非 SurpriseRemovalOK 也設定為 TRUE,否則裝置會顯示在 [解壓縮] 或 [退出硬體] 程式中。

DockDevice

指定裝置是否為停駐周邊。

UniqueID

指定裝置的實例識別碼是否為全系統的唯一標識符。 如果實例標識碼只在總線的範圍內是唯一的,則此位會清楚。

SilentInstall

指定 裝置管理員 是否應該隱藏所有安裝對話方塊,但必要對話框除外,例如「找不到相容的驅動程式」。

RawDeviceOK

指定基礎總線的驅動程式是否可以在沒有函式驅動程式 (的情況下驅動裝置,例如傳遞模式中的 SCSI 裝置) 。 此作業模式稱為原始模式。

SurpriseRemovalOK

指定裝置的迷你埠驅動程式是否可以在 SCSI 埠傳送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 結構中設定。 若要支援使用此結構,迷你埠必須在 HW_INITIALIZATION_DATA (SCSI) 中的 FeatureSupport 旗標成員中設定 STOR_FEATURE_FULL_PNP_DEVICE_CAPABILITIES 旗標,才能呼叫 ScsiPortInitialize

規格需求

需求
最低支援的用戶端 從 Windows 8 開始提供。
標頭 srb.h (包括 Storport.h、Minitape.h、Srb.h)

另請參閱

DEVICE_CAPABILITIES

HW_INITIALIZATION_DATA (SCSI)

SCSI_PNP_REQUEST_BLOCK

ScsiPortInitialize