VDS_DISK_PROP2結構 (vds.h)

[從 Windows 8 和 Windows Server 2012 開始,虛擬磁碟服務 COM 介面會由 Windows 記憶體管理 API 取代。

定義 磁碟物件的屬性。 此結構與 VDS_DISK_PROP 結構相同,不同之處在於它也會包含位置路徑,如果磁碟脫機,則為離線的原因。

語法

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;

成員

id

磁碟物件的 GUID。

status

指定磁碟狀態 的VDS_DISK_STATUS 列舉值。如果 VDS 服務無法開啟磁碟的句柄,它會將此成員設定為 VDS_DS_UNKNOWN

注意 即使包含套件的狀態VDS_PS_OFFLINE,此成員仍可VDS_DS_ONLINE。
 

OfflineReason

如果磁碟脫機,這個成員是 VDS_DISK_OFFLINE_REASON 列舉值,指定它離線的原因。

ReserveMode

這個成員保留供未來使用。

health

指定磁碟健全狀況狀態 的VDS_HEALTH 列舉值。 以下是這個成員的有效值。

VDS_H_UNKNOWN (0)

VDS_H_HEALTHY (1)

VDS_H_FAILING (4)

VDS_H_FAILED (8)

dwDeviceType

Winioctl.h 中定義的裝置類型,其中包括下列類型:

dwMediaType

STORAGE_MEDIA_TYPE列舉的媒體類型。 基本和動態磁碟會對應至 FixedMedia 列舉值。 如需詳細資訊,請參閱 STORAGE_MEDIA_TYPE

ullSize

磁碟的大小,以位元組為單位。 若要判斷磁碟的磁碟區大小上限,請呼叫 IVdsDisk3::QueryFreeExtents 並新增所有可用範圍的大小。

ulBytesPerSector

每個扇區中的位元組數目。

ulSectorsPerTrack

每個追蹤中的扇區數目。

ulTracksPerCylinder

每個圓柱中的曲目數目。

ulFlags

指定各種磁碟屬性 之VDS_DISK_FLAG 列舉值的位掩碼。

BusType

VDS_STORAGE_BUS_TYPE列舉的輸入/輸出總線類型。

PartitionStyle

指定數據分割樣式 的VDS_PARTITION_STYLE 列舉。 這個成員是等位的辨別。

dwSignature

如果 PartitionStyleVDS_PST_MBR ( 1) ,則使用 。 MBR 磁碟分區的簽章。 這個值不保證是唯一的。

DiskGuid

如果 PartitionStyleVDS_PST_GPT (2) ,則會使用 。 The
磁碟的 GUID。 此外,每個 GPT 磁碟分區都有自己的 GUID。 (請參閱 VDS_PARTITION_INFO_GPT.)

pwszDiskAddress

NNN 路徑 NNN目標NNN Lun NNN格式中類似 SCSI 的磁碟位址,其中NNN是一或多個數位。

SCSI 磁碟、IDE 磁碟和光纖通道磁碟可以有這類位址。 USB 和 1394 磁碟有不同的位址格式,而且不會儲存。

這個成員是選擇性的,如果沒有可用的值,則可以是 NULL 。 如果不是 NULL,其長度必須大於或等於 22 WCHAR,且小於或等於 64 WCHAR,包括必要的 NULL 終止符。 呼叫 IVdsDisk3::GetProperties2 來接收VDS_DISK_PROP2結構的應用程式必須檢查此成員是否為 NULL

pwszName

用來開啟使用 CreateFile 函式所建立物件句柄的名稱。 例如:

pwszFriendlyName

隨插即用 (PnP) Manager 所傳回的名稱。 此名稱會由 隨插即用 Manager 維護於 Windows 登錄中,例如:「SEAGATE ST34573N SCSI 磁碟裝置」。

pwszAdaptorName

此磁碟所連接的適配卡名稱。 PnP 管理員會傳回在 Windows 登錄中維護的名稱,例如:「Adaptec AHA-2940U2W - Ultra2 SCSI」。

pwszDevicePath

PnP 管理員傳回的字串。 PnP 管理員會使用裝置路徑來唯一識別電腦上的裝置。 如需詳細資訊,請參閱 SP_DEVICE_INTERFACE_DETAIL_DATA_W

pwszLocationPath

字串,包含磁碟的 PnP 位置路徑。 此字串的格式取決於總線類型。 如果總線類型為 SCSI、SAS 或 PCI RAID,格式為 AdapterPnpLocationPath#BusType (PPathIdTTargetIdLLunId) 。 如果總線類型為 IDE、ATA、PATA 或 SATA,格式為 AdapterPnpLocationPath#BusType (CPathId T TargetIdLLunId) 。 如需列出此字串部分的數據表,請參閱下列一節。

注意 針對 Hyper-V,此成員為 NULL,因為虛擬控制器不會傳回位置路徑。
 

備註

IVdsDisk3::GetProperties2 方法會傳回這個結構來報告磁碟對象的屬性。

下表列出 pwszLocationPath 成員中使用的位置路徑字串部分。

位置路徑部分 Description
AdapterPnpLocationPath 配接器的 PnP 位置路徑。 這是藉由呼叫 SetupDiGetDeviceProperty 函式來擷取,並傳遞 PropertyKey 參數的 &DEVPKEY_Device_LocationPaths。
BusType 總線類型:ATA、RAID、SAS 或 SCSI。
注意 如果總線類型是 IDE、PATA 或 SATA,它會在位置路徑字串中顯示為 ATA。 如果是 PCI RAID,則會顯示為 RAID。
 
PathId 公交車的數目。 這是IOCTL_SCSI_GET_ADDRESS控件程式代碼所傳回之SCSI_ADDRESS結構的PathId成員值。
TargetId 目標裝置的數目。 這是IOCTL_SCSI_GET_ADDRESS控件程式代碼所傳回之SCSI_ADDRESS結構的 TargetId 成員值。
LunId LUN 的數目。 這是IOCTL_SCSI_GET_ADDRESS控件程式代碼所傳回之SCSI_ADDRESS結構的 Lun 成員值。
 

下表包含位置路徑的範例。

匯流排類型 範例位置路徑
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)

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
標頭 vds.h

另請參閱

IVdsDisk3::GetProperties2

VDS_DISK_OFFLINE_REASON

VDS_PARTITION_INFO_GPT

VDS_PARTITION_INFO_MBR