Freigeben über


STOR_DEVICE_CAPABILITIES-Struktur (storport.h)

Die STOR_DEVICE_CAPABILITIES-Struktur meldet Gerätefunktionen an den Storport-Treiber als Reaktion auf eine Funktionsabfrage in einem SCSI-Anforderungsblock (SRB) mit der Funktion SRB_FUNCTION_PNP. STOR_DEVICE_CAPABILITIES ist eine Teilmenge der DEVICE_CAPABILITIES-Struktur , die die für Speichergeräte relevanten Member enthält.

Syntax

typedef struct _STOR_DEVICE_CAPABILITIES {
  USHORT Version;
  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  SurpriseRemovalOK : 1;
  ULONG  NoDisplayInUI : 1;
} STOR_DEVICE_CAPABILITIES, *PSTOR_DEVICE_CAPABILITIES;

Member

Version

Gibt die Version der -Struktur an. Von Storport auf STOR_DEVICE_CAPABILITIES_EX_VERSION_1 festgelegt.

DeviceD1

Gibt an, ob die Gerätehardware den D1-Energiezustand unterstützt. Miniporttreiber legen dieses Bit auf 0 fest.

DeviceD2

Gibt an, ob die Gerätehardware den D2-Energiezustand unterstützt. Miniporttreiber legen dieses Bit auf 0 fest.

LockSupported

Gibt an, ob das Gerät Sperren physischer Geräte unterstützt, die das Auswerfen des Geräts verhindern. Dieser Member bezieht sich auf das Auswerfen einer LUN oder eines Einheitsgeräts.

EjectSupported

Gibt an, ob das Gerät softwaregesteuerte Geräteauswurf unterstützt, während sich das System im PowerSystemWorking-Zustand befindet. Dieser Member bezieht sich auf das Auswerfen einer LUN oder eines Einheitsgeräts.

Removable

Gibt an, ob das Gerät dynamisch aus dem unmittelbaren übergeordneten Element entfernt werden kann. Wenn Entfernbar auf TRUE festgelegt ist, gehört das Gerät nicht zum gleichen physischen Objekt wie sein übergeordnetes Objekt.

Wenn Entfernbar auf TRUE festgelegt ist, wird das Gerät im Programm Hardware trennen oder auswerfen angezeigt, es sei denn , SurpriseRemovalOK ist ebenfalls auf TRUE festgelegt.

DockDevice

Gibt an, ob es sich bei dem Gerät um ein Docking-Peripheriegerät handelt.

UniqueID

Gibt an, ob die instance-ID des Geräts systemweit eindeutig ist. Dieses Bit ist eindeutig, wenn die instance-ID nur innerhalb des Busbereichs eindeutig ist.

SilentInstall

Gibt an, ob Geräte-Manager alle Installationsdialogfelder unterdrücken soll; mit Ausnahme erforderlicher Dialogfelder wie "Keine kompatiblen Treiber gefunden".

SurpriseRemovalOK

Gibt an, ob der Miniporttreiber für das Gerät den Fall verarbeiten kann, in dem das Gerät entfernt wird, bevor Storport SRB_FUNCTION_PNP mit StorRemoveDevice als PnPAction in der SCSI_PNP_REQUEST_BLOCK-Struktur senden kann. Wenn SurpriseRemovalOK auf TRUE festgelegt ist, kann das Gerät unabhängig vom Zustand des Treibers sicher aus dem unmittelbaren übergeordneten Element entfernt werden.

NoDisplayInUI

Zeigen Sie das Gerät nicht auf der Benutzeroberfläche an. Wenn dieses Bit festgelegt ist, wird das Gerät nie in der Benutzeroberfläche angezeigt, auch wenn das Gerät vorhanden ist, aber nicht gestartet werden kann. Miniporttreiber legen dieses Bit nicht fest.

Hinweise

Wenn ein Miniporttreiber einen SRB in seiner HwStorStartIo-Routine empfängt, in der die SRB-Funktion SRB_FUNCTION_PNP ist, wird der SRB als SCSI_PNP_REQUEST_BLOCK-Struktur formatiert. Wenn das PnPAction-Element des SRB StorQueryCapabilities ist, kann der Miniport eine STOR_DEVICE_CAPABILITIES-Struktur im DataBuffer-Member des SRB zurückgeben.

Storport sendet diese Struktur an den Miniport, wobei alle Member auf 0 initialisiert sind. Bei der Rückgabe wird nur das Wechselbare Feld aus dieser Struktur verwendet.

Ab Windows 8 sollten Miniports die STOR_DEVICE_CAPABILITIES_EX-Struktur verwenden, um die Unterstützung für zusätzliche Funktionen anzugeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows Vista.
Kopfzeile storport.h (einschließlich Storport.h, Minitape.h, Srb.h)

Weitere Informationen

DEVICE_CAPABILITIES

SCSI_PNP_REQUEST_BLOCK

STOR_DEVICE_CAPABILITIES_EX