STOR_DEVICE_CAPABILITIES estrutura (srb.h)
A estrutura STOR_DEVICE_CAPABILITIES relata os recursos do dispositivo para o driver storport em resposta a uma consulta de funcionalidades em um SRB (bloco de solicitação SCSI) com uma função de SRB_FUNCTION_PNP. STOR_DEVICE_CAPABILITIES é um subconjunto da estrutura DEVICE_CAPABILITIES que contém os membros relevantes para dispositivos de armazenamento.
Sintaxe
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;
Membros
Version
Especifica a versão da estrutura. Definido como STOR_DEVICE_CAPABILITIES_EX_VERSION_1 por Storport.
DeviceD1
Especifica se o hardware do dispositivo dá suporte ao estado de energia D1. Os drivers de miniporto definem este bit como 0.
DeviceD2
Especifica se o hardware do dispositivo dá suporte ao estado de energia D2. Os drivers de miniporto definem este bit como 0.
LockSupported
Especifica se o dispositivo dá suporte ao bloqueio de dispositivo físico que impede a ejeção do dispositivo. Esse membro se refere à ejetação de um LUN ou um dispositivo de unidade.
EjectSupported
Especifica se o dispositivo dá suporte à ejeção de dispositivo controlada por software enquanto o sistema está no estado do PowerSystemWorking . Esse membro diz respeito à ejetação de um lun ou dispositivo de unidade.
Removable
DockDevice
Especifica se o dispositivo é um periférico de encaixe.
UniqueID
Especifica se a ID da instância do dispositivo é exclusiva em todo o sistema. Esse bit fica claro se a ID da instância é exclusiva somente dentro do escopo do barramento.
SilentInstall
Especifica se Gerenciador de Dispositivos deve suprimir todas as caixas de diálogo de instalação; exceto as caixas de diálogo necessárias, como "nenhum drivers compatível encontrado".
SurpriseRemovalOK
Especifica se o driver de miniport para o dispositivo pode lidar com o caso em que o dispositivo é removido antes que Storport possa enviar SRB_FUNCTION_PNP com StorRemoveDevice como o PnPAction na estrutura SCSI_PNP_REQUEST_BLOCK . Se SurpriseRemovalOK estiver definido como TRUE, o dispositivo poderá ser removido com segurança de seu pai imediato, independentemente do estado em que o driver está.
NoDisplayInUI
Não exiba o dispositivo na interface do usuário. Se esse bit estiver definido, o dispositivo nunca será exibido na interface do usuário, mesmo que o dispositivo esteja presente, mas não seja iniciado. Os drivers de miniport não definem este bit.
Comentários
Quando um driver de miniporto recebe um SRB em sua rotina HwStorStartIo em que a função SRB é SRB_FUNCTION_PNP, o SRB é formatado como uma estrutura SCSI_PNP_REQUEST_BLOCK . Se o membro PnPAction do SRB for StorQueryCapabilities, o miniporto poderá retornar uma estrutura STOR_DEVICE_CAPABILITIES no membro DataBuffer do SRB.
O Storport envia essa estrutura para o miniporto com todos os membros inicializados como 0. No retorno, somente o campo Removível é usado dessa estrutura.
Começando com Windows 8, os miniportos devem usar a estrutura STOR_DEVICE_CAPABILITIES_EX para indicar suporte para recursos adicionais.
Requisitos
Cliente mínimo com suporte | Disponível a partir do Windows Vista. |
Cabeçalho | srb.h (inclua Storport.h, Minitape.h, Srb.h) |