IOCTL_DISK_GET_DRIVE_GEOMETRY

The IOCTL_DISK_GET_DRIVE_GEOMETRY DeviceIoControl operation returns information about the physical disk's geometry: type, number of cylinders, tracks per cylinder, sectors per track, and bytes per sector.

dwIoControlCode = IOCTL_DISK_GET_DRIVE_GEOMETRY; // operation code

lpInBuffer = NULL; // address of input buffer; not used; must be NULL

nInBufferSize = 0; // size of input buffer; not used; must be zero

lpOutBuffer ; // address of output buffer

nOutBufferSize ; // size of output buffer

lpBytesReturned ; // address of actual bytes of output

Parameters

lpInBuffer

Points to an input buffer. Not used with this operation. Set to NULL.

nInBufferSize

Specifies the size, in bytes, of the buffer pointed to by lpInBuffer. Not used with this operation. Set to zero.

lpOutBuffer

Points to a buffer that will receive a DISK_GEOMETRY data structure.

nOutBufferSize

Specifies the size, in bytes, of the buffer pointed to by lpOutBuffer, which must be greater than or equal to the size of a DISK_GEOMETRY data structure.

lpBytesReturned

Points to a DWORD that receives the actual size, in bytes, of the data stored into lpOutBuffer.

Return Values

If the operation succeeds, DeviceIoControl returns TRUE.

If the operation fails, DeviceIoControl returns FALSE. To get extended error information, call GetLastError.

Remarks

This device I/O control operation is for disk devices.

See Also

DeviceIoControl, DISK_GEOMETRY, IOCTL_DISK_GET_MEDIA_TYPES