Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

IOCTL_DISK_GET_PARTITION_INFO IOCTL (winioctl.h)

Retrieves information about the type, size, and nature of a disk partition.

Note

IOCTL_DISK_GET_PARTITION_INFO is superseded by IOCTL_DISK_GET_PARTITION_INFO_EX, which retrieves partition information for AT and Extensible Firmware Interface (EFI) partitions.

To perform this operation, call the DeviceIoControl function with the following parameters.

BOOL DeviceIoControl(
 (HANDLE) hDevice, // handle to a partition
 IOCTL_DISK_GET_PARTITION_INFO, // dwIoControlCode
 NULL, // lpInBuffer
 0, // nInBufferSize
 (LPVOID) lpOutBuffer, // output buffer
 (DWORD) nOutBufferSize, // size of output buffer
 (LPDWORD) lpBytesReturned, // number of bytes returned
 (LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);

Remarks

The IOCTL_DISK_GET_PARTITION_INFO control code is only supported on MBR-formatted disks.

The disk support can be summarized as follows.

Disk type IOCTL_DISK_GET_PARTITION_INFO IOCTL_DISK_GET_PARTITION_INFO_EX
Basic master boot record (MBR) Yes Yes
Basic GUID partition table (GPT) No Yes
Dynamic MBR boot/system Yes Yes
Dynamic MBR data Yes No
Dynamic GPT boot/system No Yes
Dynamic GPT data No No

Currently, GPT is supported only on 64-bit systems.

If the partition is on a disk formatted as type master boot record (MBR), partition size totals are limited. For more information, see the Remarks section of IOCTL_DISK_SET_DRIVE_LAYOUT.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header winioctl.h (include Windows.h)

See also


Feedback

Was this page helpful?

Additional resources