IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX IOCTL (ntddcdrm.h)

Returns information about a CD-ROM's geometry (media type, number of cylinders, tracks per cylinder, sectors per track, and bytes per sector).

The IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX request differs from the older IOCTL_CDROM_GET_DRIVE_GEOMETRY request. The IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX request can retrieve information from both Master Boot Record (MBR) and GUID Partition Table (GPT) partitioned media. However, IOCTL_CDROM_GET_DRIVE_GEOMETRY can read only MBR-style media.

Major code

IRP_MJ_DEVICE_CONTROL

Input buffer

None.

Input buffer length

None.

Output buffer

The driver returns the DISK_GEOMETRY_EX-type information in the buffer at Irp->AssociatedIrp.SystemBuffer.

Output buffer length

Parameters.DeviceIoControl.OutputBufferLength in the IO_STACK_LOCATION structure of the IRP indicates the size, in bytes, of the buffer, which must be >= sizeof(DISK_GEOMETRY_EX).

Status block

The Information field is set to the size, in bytes, of the returned data. The Status field is set to STATUS_SUCCESS, or possibly to STATUS_UNRECOGNIZED_MEDIA, STATUS_INVALID_PARAMETER, STATUS_INFO_LENGTH_MISMATCH, or STATUS_BUFFER_TOO_SMALL.

Requirements

Requirement Value
Header ntddcdrm.h (include Ntddcdrm.h)

See also

DISK_GEOMETRY_EX

IOCTL_DISK_GET_DRIVE_GEOMETRY_EX