struttura VDS_DISK_PROP2 (vds.h)
[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.]
Definisce le proprietà di un oggetto disco. Questa struttura è identica alla struttura VDS_DISK_PROP , ad eccezione del fatto che include anche il percorso del percorso e, se il disco è offline, il motivo per cui è offline.
Sintassi
typedef struct _VDS_DISK_PROP2 {
VDS_OBJECT_ID id;
VDS_DISK_STATUS status;
VDS_DISK_OFFLINE_REASON OfflineReason;
VDS_LUN_RESERVE_MODE ReserveMode;
VDS_HEALTH health;
DWORD dwDeviceType;
DWORD dwMediaType;
ULONGLONG ullSize;
ULONG ulBytesPerSector;
ULONG ulSectorsPerTrack;
ULONG ulTracksPerCylinder;
ULONG ulFlags;
VDS_STORAGE_BUS_TYPE BusType;
VDS_PARTITION_STYLE PartitionStyle;
union {
DWORD dwSignature;
GUID DiskGuid;
};
LPWSTR pwszDiskAddress;
LPWSTR pwszName;
LPWSTR pwszFriendlyName;
LPWSTR pwszAdaptorName;
LPWSTR pwszDevicePath;
LPWSTR pwszLocationPath;
} VDS_DISK_PROP2, *PVDS_DISK_PROP2;
Members
id
GUID dell'oggetto disco.
status
Valore di enumerazione VDS_DISK_STATUS che specifica lo stato del disco. Se il servizio VDS non può aprire un handle sul disco, imposta questo membro su VDS_DS_UNKNOWN.
OfflineReason
Se il disco è offline, questo membro è un valore di enumerazione VDS_DISK_OFFLINE_REASON che specifica il motivo per cui è offline.
ReserveMode
Questo membro è riservato per usi futuri.
health
Valore di enumerazione VDS_HEALTH che specifica lo stato di integrità del disco. Di seguito sono riportati i valori validi per questo membro.
VDS_H_UNKNOWN (0)
VDS_H_HEALTHY (1)
VDS_H_FAILING (4)
VDS_H_FAILED (8)
dwDeviceType
Tipo di dispositivo definito in Winioctl.h, che include i tipi seguenti tra gli altri:
dwMediaType
Tipo di supporto enumerato da STORAGE_MEDIA_TYPE. I dischi di base e dinamici eseguono il mapping all'enumeratore FixedMedia . Per altre informazioni, vedere STORAGE_MEDIA_TYPE.
ullSize
Dimensioni del disco in byte. Per determinare le dimensioni massime del volume per un disco, chiamare IVdsDisk3::QueryFreeExtents e aggiungere le dimensioni di tutti gli extent liberi.
ulBytesPerSector
Numero di byte in ogni settore.
ulSectorsPerTrack
Numero di settori in ogni traccia.
ulTracksPerCylinder
Numero di tracce in ogni cilindro.
ulFlags
Maschera di bit di VDS_DISK_FLAG valori di enumerazione che specificano vari attributi del disco.
BusType
Tipi di bus di input/output enumerati da VDS_STORAGE_BUS_TYPE.
PartitionStyle
Enumerazione VDS_PARTITION_STYLE che specifica lo stile della partizione. Questo membro è il discriminante per l'unione.
dwSignature
Usato se PartitionStyle è VDS_PST_MBR (1). Firma per la partizione MBR. Questo valore non è garantito che sia univoco.
DiskGuid
Usato se PartitionStyle è VDS_PST_GPT (2). The
GUID per il disco. Inoltre, ogni partizione GPT ha il proprio GUID. Vedere VDS_PARTITION_INFO_GPT.
pwszDiskAddress
Indirizzo di un disco simile a SCSI nel formatoNNN NNNDi destinazione NNNNNNdi destinazioneNNN NNN, dove NNN è una o più cifre.
I dischi SCSI, i dischi IDE e i dischi Fibre Channel possono avere tale indirizzo. I dischi USB e 1394 hanno formati di indirizzi diversi e non vengono archiviati.
Questo membro è facoltativo e può essere NULL se non è disponibile alcun valore. Se non è NULL, la lunghezza deve essere maggiore o uguale a 22 WCHAR e minore o uguale a 64 WCHAR, incluso il carattere di terminazione NULL richiesto. Le applicazioni che ricevono la struttura VDS_DISK_PROP2 chiamando IVdsDisk3::GetProperties2 devono verificare se questo membro è NULL.
pwszName
Nome utilizzato per aprire un handle a un oggetto creato usando la funzione CreateFile . Ad esempio:
pwszFriendlyName
Nome restituito dal gestore Plug and Play (PnP). Questo nome viene mantenuto nel Registro di sistema di Windows da Plug and Play Manager, ad esempio: "SEAGATE ST34573N dispositivo disco SCSI".
pwszAdaptorName
Nome dell'adattatore a cui è collegato il disco. PnP Manager restituisce il nome, che viene mantenuto nel Registro di sistema di Windows, ad esempio: "Adaptec AHA-2940U2W - Ultra2 SCSI".
pwszDevicePath
Stringa restituita da PnP Manager. PnP Manager usa il percorso del dispositivo per identificare in modo univoco un dispositivo in un computer. Per altre informazioni, vedere SP_DEVICE_INTERFACE_DETAIL_DATA_W.
pwszLocationPath
Stringa che contiene il percorso del percorso PnP del disco. Il formato di questa stringa dipende dal tipo di bus. Se il tipo di bus è SCSI, SAS o PCI RAID, il formato è AdapterPnpLocationPath#BusType(PPathIdTTargetIdLLunId). Se il tipo di bus è IDE, ATA, PATA o SATA, il formato è AdapterPnpLocationPath#BusType(CPathIdTTargetIdLLunId). Per una tabella che elenca le parti di questa stringa, vedere la sezione Osservazioni seguente.
Commenti
Il metodo IVdsDisk3::GetProperties2 restituisce questa struttura per segnalare le proprietà di un oggetto disco.
Nella tabella seguente sono elencate le parti della stringa del percorso di posizione utilizzata nel membro pwszLocationPath .
Parte percorso percorso | Descrizione |
---|---|
AdapterPnpLocationPath | Percorso del percorso PnP dell'adapter. Questo viene recuperato chiamando la funzione SetupDiGetDeviceProperty , passando &DEVPKEY_Device_LocationPaths per il parametro PropertyKey . |
BusType | Tipo di bus: ATA, RAID, SAS o SCSI. Nota Se il tipo di bus è IDE, PATA o SATA, viene visualizzato come ATA nella stringa del percorso della posizione. Se si tratta di RAID PCI, viene visualizzato come RAID.
|
PathId | Numero dell'autobus. Si tratta del valore del membro PathId della struttura SCSI_ADDRESS restituita dal codice di controllo IOCTL_SCSI_GET_ADDRESS . |
TargetId | Numero del dispositivo di destinazione. Si tratta del valore del membro TargetId della struttura SCSI_ADDRESS restituita dal codice di controllo IOCTL_SCSI_GET_ADDRESS . |
LunId | Numero del LUN. Questo è il valore del membro Lun della struttura SCSI_ADDRESS restituita dal codice di controllo IOCTL_SCSI_GET_ADDRESS . |
La tabella seguente contiene esempi di percorsi di posizione.
Tipo di bus | Percorso percorso di esempio |
---|---|
ATA | PCIROOT(0)#PCI(0100)#ATA(C01T03L00) |
RAID | PCIROOT(0)#PCI(0200)#PCI(0003)#PCI(0100)#RAID(P02T00L00) |
SAS | PCIROOT(1)#PCI(0300)#SAS(P00T03L00) |
SCSI | PCIROOT(0)#PCI(1C00)#PCI(0000)#SCSI(P00T01L01) |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Intestazione | vds.h |