CreatePartition method of the MSFT_Disk class
Creates a partition on a disk.
UInt32 CreatePartition( [in] UInt64 Size, [in] Boolean UseMaximumSize, [in] UInt64 Offset, [in] UInt32 Alignment, [in] Char16 DriveLetter, [in] Boolean AssignDriveLetter, [in] UInt16 MbrType, [in] String GptType, [in] Boolean IsHidden, [in] Boolean IsActive, [out] String CreatedPartition, [out] String ExtendedStatus );
- Size [in]
The desired size, in bytes, for the partition. This must be equal to or less than the size specified by the disk's LargestFreeExtent property. This parameter cannot be used with UseMaximumSize.
- UseMaximumSize [in]
If TRUE, the partition will fill the largest free extent on the disk. This parameter cannot be used with the Size parameter.
- Offset [in]
The partition offset, in bytes. If the offset is not aligned and the Alignment parameter is not specified, the offset is rounded up or down to the closest alignment boundary, depending on the size of the disk on which the partition is created.
- Alignment [in]
The alignment of the partition, in bytes.
- DriveLetter [in]
The drive letter to be assigned to the partition at the time of creation. This parameter cannot be used with AssignDriveLetter. If both parameters are specified, an Invalid Parameter error will be returned. If the drive letter is not available, the partition will be created, but error '42002' will be returned.
- AssignDriveLetter [in]
If TRUE, the next available drive letter will be assigned to the created partition. If no more drive letters are available, the partition will be created with no drive letter. This parameter cannot be used with DriveLetter. If both parameters are specified, an Invalid Parameter error will be returned.
- MbrType [in]
Specifies the MBR partition type. This parameter can only be set if the disk's PartitionStyle property is MBR, otherwise an error will be returned. The default value of this parameter is Huge.
- GptType [in]
The GPT type of the partition. This parameter is only valid if the disk's PartitionStyle property is GPT, otherwise an error will be returned. The default value for this parameter is Basic data.
- System Partition
An EFI system partition.
- Microsoft Reserved
A Microsoft reserved partition.
- Basic data
A basic data partition. This is the data partition type that is created and recognized by Windows.
Only partitions of this type can be assigned drive letters, receive volume GUID paths, host mounted folders (also called volume mount points) and be enumerated by calls to FindFirstVolume and FindNextVolume.
- LDM Metadata
A Logical Disk Manager (LDM) metadata partition on a dynamic disk.
- LDM Data
The partition is an LDM data partition on a dynamic disk.
- Microsoft Recovery
A Microsoft recovery partition.
- IsHidden [in]
If TRUE, the partition will not be able to receive a drive letter assignment, nor will the mount manager assign a volume GUID name. The partition will not be enumerated by the FindFirstVolume and FindNextVolume functions. The partition can be opened by its associated volume device name (for example, "\\?GLOBALROOT\Device\HarddiskVolumeX").
- IsActive [in]
If TRUE, the partition's MBR active bit will be set, and the partition will become bootable. This parameter is only valid for MBR disks.
- CreatedPartition [out]
A string that contains an embedded MSFT_Partition object that represents the partition that was created.
- ExtendedStatus [out]
A string that contains an embedded MSFT_StorageExtendedStatus object.
This parameter allows the storage provider to return extended (implementation-specific) error information.
- Success (0)
- Not Supported (1)
- Unspecified Error (2)
- Timeout (3)
- Failed (4)
- Invalid Parameter (5)
- Disk is in use (6)
- Size Not Supported (4097)
- Not enough free space (40000)
- Access denied (40001)
- There are not enough resources to complete the operation. (40002)
- Cache out of date (40003)
- You must specify a size by using either the Size or the UseMaximumSize parameter. You can specify only one of these parameters at a time. (40005)
- The disk has not been initialized. (41000)
- The disk is read only. (41002)
- The disk is offline. (41003)
- The disk's partition limit has been reached. (41004)
- The specified partition alignment is not valid. It must be a multiple of the disk's sector size. (41005)
- A parameter is not valid for this type of partition. (41006)
- The specified partition type is not valid. (41010)
- Only the first 2 TB are usable on MBR disks. (41011)
- The specified offset is not valid. (41012)
- There is no media in the device. (41015)
- The specified offset is not valid. (41016)
- The specified partition layout is invalid. (41017)
- The specified object is managed by the Microsoft Failover Clustering component. The disk must be in cluster maintenance mode and the cluster resource status must be online to perform this operation. (41018)
- The requested access path is already in use. (42002)
- Cannot assign access paths to hidden partitions. (42004)
- The access path is not valid. (42007)
Minimum supported client
Windows 8 [desktop apps only]
Minimum supported server
Windows Server 2012 [desktop apps only]