IVdsAdvancedDisk::CreatePartition method (vds.h)
Creates a partition on a basic disk.
The IVdsCreatePartitionEx::CreatePartitionEx method supersedes this method.
HRESULT CreatePartition( ULONGLONG ullOffset, ULONGLONG ullSize, CREATE_PARTITION_PARAMETERS *para, IVdsAsync **ppAsync );
The partition offset.
The size, in bytes, of the new partition.
The pointer to parameters defined by the CREATE_PARTITION_PARAMETERS structure.
The address of an IVdsAsync interface pointer, which VDS initializes on return. Callers must release the interface. Use this pointer to cancel, wait for, or query the status of the operation.
This method can return standard HRESULT values, such as E_INVALIDARG or E_OUTOFMEMORY, and VDS-specific return values. It can also return converted system error codes using the HRESULT_FROM_WIN32 macro. Errors can originate from VDS itself or from the underlying VDS provider that is being used. Possible return values include the following.
||The partition was created successfully.|
||There is no media in a removable drive.|
||The media does not support this operation. For example, the caller cannot create a partition on a CD-ROM.|
||Creating a second partition on removable media is not supported. Alternatively, this error indicates the disk is a dynamic disk.|
||The maximum number of partitions (four primary, or three primary and one extended) already exists when the caller tries to create an additional primary partition or extended partition.|
The partition was created successfully, but VDS failed to update the boot options in the Boot Configuration Data (BCD) store.
Windows Server 2003: Boot options are stored in the boot.ini file on an x86 or x64 system or NVRAM on an Itanium system.
|Minimum supported client||Windows Vista [desktop apps only]|
|Minimum supported server||Windows Server 2003 [desktop apps only]|