STOR_DEVICE_CAPABILITIES struttura (storport.h)
La struttura STOR_DEVICE_CAPABILITIES segnala le funzionalità del dispositivo al driver Storport in risposta a una query su una query in un blocco di richieste SCSI (SRB) con una funzione di SRB_FUNCTION_PNP. STOR_DEVICE_CAPABILITIES è un subset della struttura DEVICE_CAPABILITIES contenente i membri pertinenti ai dispositivi di archiviazione.
Sintassi
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;
Members
Version
Specifica la versione della struttura. Impostare su STOR_DEVICE_CAPABILITIES_EX_VERSION_1 da Storport.
DeviceD1
Specifica se l'hardware del dispositivo supporta lo stato di alimentazione D1. I driver miniport impostano questo bit su 0.
DeviceD2
Specifica se l'hardware del dispositivo supporta lo stato di alimentazione D2. I driver miniport impostano questo bit su 0.
LockSupported
Specifica se il dispositivo supporta il blocco del dispositivo fisico che impedisce l'espulsione del dispositivo. Questo membro riguarda l'espulsione di un LUN o di un dispositivo unità.
EjectSupported
Specifica se il dispositivo supporta l'espulsione del dispositivo controllato dal software mentre il sistema si trova nello stato di PowerSystemWorking . Questo membro riguarda l'esezione di un dispositivo LUN o unità.
Removable
Specifica se il dispositivo può essere rimosso dinamicamente dall'elemento padre immediato. Se La proprietà Rimovibile è impostata su TRUE, il dispositivo non appartiene allo stesso oggetto fisico del relativo padre.
Se Removable è impostato su TRUE, il dispositivo viene visualizzato nel programma Unplug o Eject Hardware, a meno che SurpriseRemovalOK non sia impostato anche su TRUE.
DockDevice
Specifica se il dispositivo è una periferica di ancoraggio.
UniqueID
Specifica se l'ID dell'istanza del dispositivo è univoco a livello di sistema. Questo bit è chiaro se l'ID istanza è univoco solo nell'ambito del bus.
SilentInstall
Specifica se Gestione dispositivi deve eliminare tutte le finestre di dialogo di installazione, ad eccezione delle finestre di dialogo necessarie, ad esempio "nessun driver compatibile trovato".
SurpriseRemovalOK
Specifica se il driver miniport per il dispositivo può gestire il caso in cui il dispositivo viene rimosso prima che Storport possa inviare SRB_FUNCTION_PNP con StorRemoveDevice come PnPAction nella struttura SCSI_PNP_REQUEST_BLOCK . Se SurpriseRemovalOK è impostato su TRUE, il dispositivo può essere rimosso in modo sicuro dal relativo padre immediato indipendentemente dallo stato in cui si trova il driver.
NoDisplayInUI
Non visualizzare il dispositivo nell'interfaccia utente. Se questo bit è impostato, il dispositivo non viene mai visualizzato nell'interfaccia utente, anche se il dispositivo è presente ma non viene avviato. I driver miniport non impostano questo bit.
Commenti
Quando un driver miniport riceve una SRB nella routine HwStorStartIo in cui la funzione SRB è SRB_FUNCTION_PNP, la SRB viene formattata come struttura SCSI_PNP_REQUEST_BLOCK . Se il membro PnPAction di SRB è StorQueryCapabilities, il miniport può restituire una struttura STOR_DEVICE_CAPABILITIES nel membro DataBuffer della SRB.
Storport invia questa struttura al miniport con tutti i membri inizializzati a 0. In caso di restituzione, viene usato solo il campo rimovibile da questa struttura.
A partire da Windows 8, i miniport devono usare la struttura STOR_DEVICE_CAPABILITIES_EX per indicare il supporto per funzionalità aggiuntive.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows Vista. |
Intestazione | storport.h (include Storport.h, Minitape.h, Srb.h) |