struktur VDS_DISK_PROP2 (vds.h)
[Dimulai dengan Windows 8 dan Windows Server 2012, antarmuka COM Layanan Disk Virtual digantikan oleh WINDOWS Storage Management API.]
Menentukan properti objek disk. Struktur ini identik dengan struktur VDS_DISK_PROP , kecuali bahwa struktur ini juga menyertakan jalur lokasi dan, jika disk offline, alasan mengapa offline.
Sintaks
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;
Anggota
id
GUID objek disk.
status
Nilai enumerasi VDS_DISK_STATUS yang menentukan status disk. Jika layanan VDS tidak dapat membuka handel ke disk, layanan ini mengatur anggota ini ke VDS_DS_UNKNOWN.
OfflineReason
Jika disk offline, anggota ini adalah nilai enumerasi VDS_DISK_OFFLINE_REASON yang menentukan alasan mengapa disk offline.
ReserveMode
Anggota ini dicadangkan untuk digunakan di masa mendatang.
health
Nilai enumerasi VDS_HEALTH yang menentukan status kesehatan disk. Berikut ini adalah nilai yang valid untuk anggota ini.
VDS_H_UNKNOWN (0)
VDS_H_HEALTHY (1)
VDS_H_FAILING (4)
VDS_H_FAILED (8)
dwDeviceType
Jenis perangkat yang ditentukan dalam Winioctl.h, yang mencakup jenis berikut antara lain:
dwMediaType
Jenis media yang dijumlahkan oleh STORAGE_MEDIA_TYPE. Peta disk dasar dan dinamis ke enumerator FixedMedia . Untuk informasi selengkapnya, lihat STORAGE_MEDIA_TYPE.
ullSize
Ukuran disk dalam byte. Untuk menentukan ukuran volume maksimum untuk disk, panggil IVdsDisk3::QueryFreeExtents dan tambahkan ukuran semua tingkat gratis.
ulBytesPerSector
Jumlah byte di setiap sektor.
ulSectorsPerTrack
Jumlah sektor di setiap trek.
ulTracksPerCylinder
Jumlah trek di setiap silinder.
ulFlags
Bitmask nilai enumerasi VDS_DISK_FLAG yang menentukan berbagai atribut disk.
BusType
Jenis bus input/output yang dijumlahkan oleh VDS_STORAGE_BUS_TYPE.
PartitionStyle
Enumerasi VDS_PARTITION_STYLE yang menentukan gaya partisi. Anggota ini adalah diskriminan untuk serikat.
dwSignature
Digunakan jika PartitionStyleVDS_PST_MBR (1). Tanda tangan untuk partisi MBR. Nilai ini tidak dijamin unik.
DiskGuid
Digunakan jika PartitionStyleVDS_PST_GPT (2). The
GUID untuk disk. Selain itu, setiap partisi GPT memiliki GUID sendiri. (Lihat VDS_PARTITION_INFO_GPT.)
pwszDiskAddress
Alamat disk seperti SCSI dalam formatNNN Target NNN Target NNN Jalur NNNPortNNN, di mana NNN adalah satu atau beberapa digit.
Disk SCSI, disk IDE, dan disk Fibre Channel dapat memiliki alamat seperti itu. Disk USB dan 1394 memiliki format alamat yang berbeda dan tidak disimpan.
Anggota ini bersifat opsional dan dapat berupa NULL jika tidak ada nilai yang tersedia. Jika bukan NULL, panjangnya harus lebih besar dari atau sama dengan 22 WCHAR dan kurang dari atau sama dengan 64 WCHAR, termasuk terminator NULL yang diperlukan. Aplikasi yang menerima struktur VDS_DISK_PROP2 dengan memanggil IVdsDisk3::GetProperties2 harus memeriksa apakah anggota ini NULL.
pwszName
Nama yang digunakan untuk membuka handel ke objek yang dibuat menggunakan fungsi CreateFile . Contohnya:
pwszFriendlyName
Nama yang dikembalikan oleh Manajer Plug and Play (PnP). Nama ini dipertahankan di registri Windows oleh Plug and Play Manager, misalnya: "SEAGATE ST34573N Scsi Disk Device".
pwszAdaptorName
Nama adapter tempat disk ini dilampirkan. Manajer PnP mengembalikan nama, yang dipertahankan dalam registri Windows, misalnya: "Adaptec AHA-2940U2W - Ultra2 SCSI".
pwszDevicePath
String yang dikembalikan oleh Manajer PnP. Manajer PnP menggunakan jalur perangkat untuk mengidentifikasi perangkat secara unik di komputer. Untuk informasi selengkapnya, lihat SP_DEVICE_INTERFACE_DETAIL_DATA_W.
pwszLocationPath
String yang berisi jalur lokasi PnP disk. Format string ini tergantung pada jenis bus. Jika jenis bus adalah SCSI, SAS, atau PCI RAID, formatnya adalah AdapterPnpLocationPath#BusType(PPathIdTTargetIdLLunId). Jika jenis bus adalah IDE, ATA, PATA, atau SATA, formatnya adalah AdapterPnpLocationPath#BusType(CPathIdTTargetIdLLunId). Lihat bagian Keterangan berikut untuk tabel yang mencantumkan bagian string ini.
Keterangan
Metode IVdsDisk3::GetProperties2 mengembalikan struktur ini untuk melaporkan properti objek disk.
Tabel berikut mencantumkan bagian string jalur lokasi yang digunakan dalam anggota pwszLocationPath .
Bagian jalur lokasi | Deskripsi |
---|---|
AdapterPnpLocationPath | Jalur lokasi PnP adaptor. Ini diambil dengan memanggil fungsi SetupDiGetDeviceProperty , meneruskan &DEVPKEY_Device_LocationPaths untuk parameter PropertyKey . |
BusType | Jenis bus: ATA, RAID, SAS, atau SCSI.
Catatan Jika jenis bus adalah IDE, PATA, atau SATA, jenis bus muncul sebagai ATA di string jalur lokasi. Jika PCI RAID, itu muncul sebagai RAID.
|
PathId | Jumlah bus. Ini adalah nilai anggota PathId dari struktur SCSI_ADDRESS yang dikembalikan oleh kode kontrol IOCTL_SCSI_GET_ADDRESS . |
TargetId | Jumlah perangkat target. Ini adalah nilai anggota TargetId dari struktur SCSI_ADDRESS yang dikembalikan oleh kode kontrol IOCTL_SCSI_GET_ADDRESS . |
LunId | Jumlah LUN. Ini adalah nilai anggota Lun dari struktur SCSI_ADDRESS yang dikembalikan oleh kode kontrol IOCTL_SCSI_GET_ADDRESS . |
Tabel berikut berisi contoh jalur lokasi.
Jenis bus | Contoh jalur lokasi |
---|---|
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) |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 R2 [hanya aplikasi desktop] |
Header | vds.h |