DISK_GEOMETRY_EX structure

Describes the extended geometry of disk devices and media.

Syntax

typedef struct _DISK_GEOMETRY_EX {
  DISK_GEOMETRY Geometry;
  LARGE_INTEGER DiskSize;
  BYTE          Data[1];
} DISK_GEOMETRY_EX, *PDISK_GEOMETRY_EX;

Members

Geometry

A DISK_GEOMETRY structure.

DiskSize

The disk size, in bytes. See LARGE_INTEGER.

Data

Any additional data. For more information, see Remarks.

Remarks

DISK_GEOMETRY_EX is a variable-length structure composed of a DISK_GEOMETRY structure followed by a DISK_PARTITION_INFO structure and a DISK_DETECTION_INFO structure. Because the detection information is not at a fixed location within the DISK_GEOMETRY_EX structure, use the following macro to access the DISK_DETECTION_INFO structure.

C++
PDISK_DETECTION_INFO DiskGeometryGetDetect(
  PDISK_GEOMETRY_EX Geometry
);
Similarly, use the following macro to access the DISK_PARTITION_INFO structure.
C++
PDISK_PARTITION_INFO DiskGeometryGetPartition(
  PDISK_GEOMETRY_EX Geometry
);
The information returned does not include the number of partitions nor the partition information contained in the PARTITION_INFORMATION structure. To obtain this information, use the IOCTL_DISK_GET_DRIVE_LAYOUT_EX control code.

Requirements

   
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

DISK_DETECTION_INFO

DISK_GEOMETRY

DISK_PARTITION_INFO

IOCTL_DISK_GET_DRIVE_GEOMETRY_EX