IVdsAdvancedDisk interface (vds.h)

[Beginning with Windows 8 and Windows Server 2012, the Virtual Disk Service COM interface is superseded by the Windows Storage Management API.]

Creates and deletes partitions, and modifies partition attributes.

Inheritance

The IVdsAdvancedDisk interface inherits from the IUnknown interface. IVdsAdvancedDisk also has these types of members:

Methods

The IVdsAdvancedDisk interface has these methods.

 
IVdsAdvancedDisk::AssignDriveLetter

Assigns a drive letter to an existing OEM, ESP, or unknown partition.
IVdsAdvancedDisk::ChangeAttributes

Modifies the attributes of the partition.
IVdsAdvancedDisk::Clean

Removes partition information and uninitializes basic or dynamic disks.Windows Server 2003:  The Clean method is not supported for removable devices.
IVdsAdvancedDisk::CreatePartition

Creates a partition on a basic disk. The IVdsCreatePartitionEx::CreatePartitionEx method supersedes this method.
IVdsAdvancedDisk::DeleteDriveLetter

Deletes a drive letter assigned to an OEM, ESP, or unknown partition.
IVdsAdvancedDisk::DeletePartition

Deletes a partition from a basic disk.
IVdsAdvancedDisk::FormatPartition

Formats an existing OEM, ESP, or unknown partition. (IVdsAdvancedDisk.FormatPartition)
IVdsAdvancedDisk::GetDriveLetter

Returns the drive letter assigned to an OEM, ESP, or unknown partition.
IVdsAdvancedDisk::GetPartitionProperties

Returns the properties of the partition identified by the partition offset.
IVdsAdvancedDisk::QueryPartitions

Returns the details of all partitions on the current disk.

Remarks

The relationship between partitions and volumes is complex, and is best described in terms of the software provider (basic or dynamic) that manages the disk. Basic providers support the following three categories of partitions:

  • Partitions that are not volumes, because you can neither format them nor assign a drive letter to them. These partitions are MSR partitions, LDM Metadata partitions, and extended partitions.
  • Partitions associated with hidden volumes, which you can format and assign a drive letter to, but which host no user data. Instead, the system uses these partitions for booting, recovery, and so on. The partitions include OEM partitions, ESP partitions on GPT disks, and Unknown partitions. You cannot use the IVdsVolume or IVdsVolumeMF interfaces to format these partitions. Instead, use the IVdsAdvancedDisk interface, which exposes the AssignDriveLetter, DeleteDriveLetter, and FormatPartition methods.
  • Partitions that do not fall into the preceding two categories hold user data, files, and the installed operating system for the user. These partitions are always volumes; you can format them, assign drive letters to them, and enumerate through them with the FindFirstVolume and FindNextVolume functions.
In general, dynamic providers do not map volumes to partitions. The exceptions are system volumes, boot volumes, and volumes for which the caller explicitly requests this mapping. Only the GetPartitionProperties, QueryPartitions, and Clean methods are valid operations to be performed on dynamic disks. All other methods fail. Except for the Clean method, configuration-type operations are not valid on dynamic disks.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header vds.h

See also

Disk Object

IVdsVolume

IVdsVolumeMF

VDS Interfaces