VDS_DISK_PROP2 Struktur (vds.h)
[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts durch die Windows Storage Management-API abgelöst.]
Definiert die Eigenschaften eines Datenträgerobjekts. Diese Struktur ist identisch mit der VDS_DISK_PROP-Struktur , mit der Ausnahme, dass sie auch den Speicherortpfad und, wenn der Datenträger offline ist, den Grund enthält, warum er offline ist.
Syntax
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;
Member
id
Die GUID des Datenträgerobjekts.
status
Ein VDS_DISK_STATUS-Enumerationswert, der die status des Datenträgers angibt. Wenn der VDS-Dienst kein Handle für den Datenträger öffnen kann, wird dieser Member auf VDS_DS_UNKNOWN festgelegt.
OfflineReason
Wenn der Datenträger offline ist, ist dieser Member ein VDS_DISK_OFFLINE_REASON Enumerationswert, der den Grund angibt, warum er offline ist.
ReserveMode
Dieses Element ist für die zukünftige Verwendung reserviert.
health
Ein VDS_HEALTH Enumerationswert, der den Integritätszustand des Datenträgers angibt. Im Folgenden sind die gültigen Werte für diesen Member aufgeführt.
VDS_H_UNKNOWN (0)
VDS_H_HEALTHY (1)
VDS_H_FAILING (4)
VDS_H_FAILED (8)
dwDeviceType
Der in Winioctl.h definierte Gerätetyp, der unter anderem die folgenden Typen enthält:
dwMediaType
Ein Medientyp, der von STORAGE_MEDIA_TYPE aufgezählt wird. Einfache und dynamische Datenträger werden dem FixedMedia-Enumerator zugeordnet. Weitere Informationen finden Sie unter STORAGE_MEDIA_TYPE.
ullSize
Die Größe des Datenträgers in Bytes. Um die maximale Volumegröße für einen Datenträger zu bestimmen, rufen Sie IVdsDisk3::QueryFreeExtents auf, und fügen Sie die Größen aller freien Blöcke hinzu.
ulBytesPerSector
Die Anzahl der Bytes in jedem Sektor.
ulSectorsPerTrack
Die Anzahl der Sektoren in jeder Spur.
ulTracksPerCylinder
Die Anzahl der Spuren in jedem Zylinder.
ulFlags
Eine Bitmaske mit VDS_DISK_FLAG Enumerationswerten, die verschiedene Datenträgerattribute angeben.
BusType
Die von VDS_STORAGE_BUS_TYPE aufgelisteten Ein-/Ausgabebustypen.
PartitionStyle
Eine VDS_PARTITION_STYLE-Enumeration , die den Partitionsstil angibt. Dieses Mitglied ist der Diskriminant für die Union.
dwSignature
Wird verwendet, wenn PartitionStyleVDS_PST_MBR (1) ist. Die Signatur für die MBR-Partition. Dieser Wert ist nicht garantiert eindeutig.
DiskGuid
Wird verwendet, wenn PartitionStyleVDS_PST_GPT (2) ist. The
GUID für den Datenträger. Darüber hinaus verfügt jede GPT-Partition über eine eigene GUID. (Siehe VDS_PARTITION_INFO_GPT.)
pwszDiskAddress
Die Adresse eines SCSI-ähnlichen Datenträgers im Port NNN-Pfad-NNN-ZielformatNNNLunNNN, wobei NNN eine oder mehrere Ziffern ist.
SCSI-Datenträger, IDE-Datenträger und Fibre Channel-Datenträger können über eine solche Adresse verfügen. USB- und 1394-Datenträger haben unterschiedliche Adressformate und werden nicht gespeichert.
Dieser Member ist optional und kann NULL sein, wenn kein Wert verfügbar ist. Wenn es nicht NULL ist, muss seine Länge größer oder gleich 22 WCHAR und kleiner oder gleich 64 WCHAR sein, einschließlich des erforderlichen NULL-Abschlusszeichens . Anwendungen, die die VDS_DISK_PROP2-Struktur erhalten, indem sie IVdsDisk3::GetProperties2 aufrufen, müssen überprüfen, ob dieser Member NULL ist.
pwszName
Der Name, der verwendet wird, um ein Handle für ein Objekt zu öffnen, das mit der CreateFile-Funktion erstellt wurde. Beispiel:
pwszFriendlyName
Der vom Plug & Play -Manager (PnP) zurückgegebene Name. Dieser Name wird in der Windows-Registrierung vom Plug & Play Manager verwaltet, z. B. "SEAGATE ST34573N SCSI Disk Device".
pwszAdaptorName
Der Name des Adapters, an den dieser Datenträger angefügt ist. Der PnP-Manager gibt den Namen zurück, der in der Windows-Registrierung verwaltet wird, z. B. "Adaptec AHA-2940U2W - Ultra2 SCSI".
pwszDevicePath
Die vom PnP-Manager zurückgegebene Zeichenfolge. Der PnP-Manager verwendet den Gerätepfad, um ein Gerät auf einem Computer eindeutig zu identifizieren. Weitere Informationen finden Sie unter SP_DEVICE_INTERFACE_DETAIL_DATA_W.
pwszLocationPath
Eine Zeichenfolge, die den PnP-Speicherortpfad des Datenträgers enthält. Das Format dieser Zeichenfolge hängt vom Bustyp ab. Wenn der Bustyp SCSI, SAS oder PCI RAID ist, lautet das Format AdapterPnpLocationPath#BusType(PPathIdTTargetIdLLunId). Wenn der Bustyp IDE, ATA, PATA oder SATA ist, lautet das Format AdapterPnpLocationPath#BusType(CPathIdTTargetIdLLunId). Im folgenden Abschnitt "Hinweise" finden Sie eine Tabelle, in der die Teile dieser Zeichenfolge aufgeführt sind.
Hinweise
Die IVdsDisk3::GetProperties2-Methode gibt diese Struktur zurück, um die Eigenschaften eines Datenträgerobjekts zu melden.
In der folgenden Tabelle sind die Teile der Speicherortpfadzeichenfolge aufgeführt, die im pwszLocationPath-Element verwendet wird.
Standortpfadteil | BESCHREIBUNG |
---|---|
AdapterPnpLocationPath | Der PnP-Speicherortpfad des Adapters. Dies wird durch Aufrufen der SetupDiGetDeviceProperty-Funktion abgerufen und &DEVPKEY_Device_LocationPaths für den PropertyKey-Parameter übergeben. |
BusType | Der Bustyp: ATA, RAID, SAS oder SCSI. Hinweis Wenn der Bustyp IDE, PATA oder SATA ist, wird er in der Pfadzeichenfolge des Speicherorts als ATA angezeigt. Wenn es sich um PCI-RAID handelt, wird es als RAID angezeigt.
|
PathId | Die Nummer des Busses. Dies ist der Wert des PathId-Elements der SCSI_ADDRESS-Struktur, der vom IOCTL_SCSI_GET_ADDRESS-Steuerelementcode zurückgegeben wird. |
TargetId | Die Nummer des Zielgeräts. Dies ist der Wert des TargetId-Elements der SCSI_ADDRESS-Struktur, der vom IOCTL_SCSI_GET_ADDRESS-Steuerelementcode zurückgegeben wird. |
LunId | Die Nummer der LUN. Dies ist der Wert des Lun-Elements der SCSI_ADDRESS-Struktur, der vom IOCTL_SCSI_GET_ADDRESS-Steuerelementcode zurückgegeben wird. |
Die folgende Tabelle enthält Beispiele für Speicherortpfade.
Bustyp | Beispielpfad |
---|---|
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) |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Kopfzeile | vds.h |