struttura STORAGE_DEVICE_DESCRIPTOR (winioctl.h)
Usato insieme al codice di controllo IOCTL_STORAGE_QUERY_PROPERTY per recuperare i dati del descrittore del dispositivo di archiviazione per un dispositivo.
Sintassi
typedef struct _STORAGE_DEVICE_DESCRIPTOR {
DWORD Version;
DWORD Size;
BYTE DeviceType;
BYTE DeviceTypeModifier;
BOOLEAN RemovableMedia;
BOOLEAN CommandQueueing;
DWORD VendorIdOffset;
DWORD ProductIdOffset;
DWORD ProductRevisionOffset;
DWORD SerialNumberOffset;
STORAGE_BUS_TYPE BusType;
DWORD RawPropertiesLength;
BYTE RawDeviceProperties[1];
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
Members
Version
Contiene le dimensioni di questa struttura, in byte. Il valore di questo membro verrà modificato man mano che i membri vengono aggiunti alla struttura.
Size
Specifica le dimensioni totali del descrittore, in byte, che possono includere l'ID fornitore, l'ID prodotto, la revisione del prodotto, le stringhe del numero di serie del dispositivo e i dati specifici del bus che vengono aggiunti alla struttura.
DeviceType
Specifica il tipo di dispositivo definito dalla specifica Small Computer Systems Interface (SCSI).
DeviceTypeModifier
Specifica il modificatore del tipo di dispositivo, se presente, come definito dalla specifica SCSI. Se non esiste alcun modificatore del tipo di dispositivo, questo membro è zero.
RemovableMedia
Indica quando TRUE il supporto del dispositivo (se presente) è rimovibile. Se il dispositivo non dispone di supporti, questo membro deve essere ignorato. Se FALSE il supporto del dispositivo non è rimovibile.
CommandQueueing
Indica quando TRUE che il dispositivo supporta più comandi in sospeso (accodamento con tag SCSI o equivalente). Se FALSE, il dispositivo non supporta l'accodamento con tag SCSI o l'equivalente.
VendorIdOffset
Specifica l'offset di byte dall'inizio della struttura a una stringa ASCII con terminazione Null contenente l'ID fornitore del dispositivo. Se il dispositivo non ha un ID fornitore, questo membro è zero.
ProductIdOffset
Specifica l'offset di byte dall'inizio della struttura a una stringa ASCII con terminazione Null contenente l'ID prodotto del dispositivo. Se il dispositivo non ha id prodotto, questo membro è zero.
ProductRevisionOffset
Specifica l'offset di byte dall'inizio della struttura a una stringa ASCII con terminazione Null che contiene la stringa di revisione del prodotto del dispositivo. Se il dispositivo non ha una stringa di revisione del prodotto, questo membro è zero.
SerialNumberOffset
Specifica l'offset di byte dall'inizio della struttura a una stringa ASCII con terminazione Null contenente il numero di serie del dispositivo. Se il dispositivo non ha un numero di serie, questo membro è zero.
BusType
Specifica un valore enumeratore di tipo STORAGE_BUS_TYPE che indica il tipo di bus a cui è connesso il dispositivo. Questo deve essere utilizzato per interpretare le proprietà non elaborate di un dispositivo alla fine di questa struttura (se presente).
RawPropertiesLength
Indica il numero di byte di dati specifici del bus aggiunti a questo descrittore.
RawDeviceProperties[1]
Contiene una matrice di lunghezza 1 che funge da segnaposto per il primo byte dei dati delle proprietà specifiche del bus.
Commenti
Un'applicazione può determinare le dimensioni del buffer necessarie eseguendo un codice di controllo IOCTL_STORAGE_QUERY_PROPERTY passando una struttura di STORAGE_DESCRIPTOR_HEADER per il buffer di output e quindi usando il membro Size restituito della struttura STORAGE_DESCRIPTOR_HEADER per allocare un buffer delle dimensioni appropriate.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | winioctl.h (include Windows.h) |