DRIVE_LAYOUT_INFORMATION_EX structure (ntdddisk.h)

The DRIVE_LAYOUT_INFORMATION_EX structure is used to report information about the driver layout.

Syntax

typedef struct _DRIVE_LAYOUT_INFORMATION_EX {
  ULONG                    PartitionStyle;
  ULONG                    PartitionCount;
  union {
    DRIVE_LAYOUT_INFORMATION_MBR Mbr;
    DRIVE_LAYOUT_INFORMATION_GPT Gpt;
  } DUMMYUNIONNAME;
  PARTITION_INFORMATION_EX PartitionEntry[1];
} DRIVE_LAYOUT_INFORMATION_EX, *PDRIVE_LAYOUT_INFORMATION_EX;

Members

PartitionStyle

Takes a PARTITION_STYLE enumerated value that specifies the type of partition table the disk contains.

PartitionCount

Indicates the number of partitions detected on the disk.

DUMMYUNIONNAME

DUMMYUNIONNAME.Mbr

Indicates the drive layout information for a disk with a Master Boot Record. This member is valid when PartitionStyle is PARTITION_STYLE_MBR. See the definition of DRIVE_LAYOUT_INFORMATION_MBR for more information.

DUMMYUNIONNAME.Gpt

Indicates the drive layout information for a disk with a GUID Partition Table. This member is valid when PartitionStyle is PARTITION_STYLE_GPT. See definition of DRIVE_LAYOUT_INFORMATION_GPT for more information.

PartitionEntry[1]

Contains a variable-length array of PARTITION_INFORMATION_EX structures, one for each partition on the drive.

Remarks

This structure is used for both reading and writing disk partition information. It is used with IoReadPartitionTableEx and IoWritePartitionTableEx and replaces the obsolete structure DRIVE_LAYOUT_INFORMATION that was used with IoReadPartitionTable and IoWritePartitionTable. The principal difference is that the new structures and routines support both Master Boot Record (MBR) partitions and GUID Partition Table (GPT) partitions, whereas the older routines and structures are only used with MBR partitions.

Requirements

Requirement Value
Header ntdddisk.h (include Ntddk.h)

See also

DRIVE_LAYOUT_INFORMATION_GPT

DRIVE_LAYOUT_INFORMATION_MBR

IoReadPartitionTableEx

IoWritePartitionTableEx

PARTITION_STYLE