estructura de STOR_DEVICE_CAPABILITIES (srb.h)

La estructura STOR_DEVICE_CAPABILITIES notifica las funcionalidades del dispositivo al controlador Storport en respuesta a una consulta de funcionalidades en un bloque de solicitudes SCSI (SRB) con una función de SRB_FUNCTION_PNP. STOR_DEVICE_CAPABILITIES es un subconjunto de la estructura de DEVICE_CAPABILITIES que contiene los miembros pertinentes para los dispositivos de almacenamiento.

Sintaxis

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;

Miembros

Version

Especifica la versión de la estructura. Establezca en STOR_DEVICE_CAPABILITIES_EX_VERSION_1 por Storport.

DeviceD1

Especifica si el hardware del dispositivo admite el estado de alimentación D1. Los controladores de minipuerto establecen este bit en 0.

DeviceD2

Especifica si el hardware del dispositivo admite el estado de alimentación D2. Los controladores de minipuerto establecen este bit en 0.

LockSupported

Especifica si el dispositivo admite el bloqueo de dispositivos físicos que impide la expulsión del dispositivo. Este miembro pertenece a la expulsión de un LUN o un dispositivo de unidad.

EjectSupported

Especifica si el dispositivo admite la expulsión de dispositivos controlados por software mientras el sistema está en estado PowerSystemWorking . Este miembro pertenece a la expulsión de un LUN o un dispositivo de unidad.

Removable

DockDevice

Especifica si el dispositivo es un periférico de acoplamiento.

UniqueID

Especifica si el identificador de instancia del dispositivo es único en todo el sistema. Este bit está claro si el identificador de instancia es único solo dentro del ámbito del bus.

SilentInstall

Especifica si Administrador de dispositivos debe suprimir todos los cuadros de diálogo de instalación; excepto los cuadros de diálogo necesarios, como "no se encontraron controladores compatibles".

SurpriseRemovalOK

Especifica si el controlador de miniport para el dispositivo puede controlar el caso en el que se quita el dispositivo antes de que Storport pueda enviar SRB_FUNCTION_PNP con StorRemoveDevice como PnPAction en la estructura SCSI_PNP_REQUEST_BLOCK . Si SurpriseRemovalOK está establecido en TRUE, el dispositivo se puede quitar de forma segura de su elemento primario inmediato, independientemente del estado en el que se encuentra su controlador.

NoDisplayInUI

No muestre el dispositivo en la interfaz de usuario. Si se establece este bit, el dispositivo nunca se muestra en la interfaz de usuario, incluso si el dispositivo está presente, pero no se inicia. Los controladores de minipuerto no establecen este bit.

Observaciones

Cuando un controlador de minipuerto recibe un SRB en su rutina HwStorStartIo donde se SRB_FUNCTION_PNP la función SRB, el SRB tiene el formato de estructura SCSI_PNP_REQUEST_BLOCK . Si el miembro PnPAction del SRB es StorQueryCapabilities, el miniporte puede devolver una estructura de STOR_DEVICE_CAPABILITIES en el miembro DataBuffer del SRB.

Storport envía esta estructura al miniport con todos los miembros inicializados en 0. Al devolver, solo se utiliza el campo Extraíble de esta estructura.

A partir de Windows 8, los miniportes deben usar la estructura de STOR_DEVICE_CAPABILITIES_EX para indicar la compatibilidad con funcionalidades adicionales.

Requisitos

   
Cliente mínimo compatible Disponible a partir de Windows Vista.
Header srb.h (incluya Storport.h, Minitape.h, Srb.h)

Vea también

DEVICE_CAPABILITIES

SCSI_PNP_REQUEST_BLOCK

STOR_DEVICE_CAPABILITIES_EX