IOCTL_DISK_GET_PARTITION_INFO - Win32 apps (original) (raw)

IOCTL_DISK_GET_PARTITION_INFO IOCTL (winioctl.h)

In this article

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?

No

Need help with this topic?

Want to try using Ask Learn to clarify or guide you through this topic?