Compartir a través de


IOCTL_DISK_GET_DRIVE_LAYOUT_EX IOCTL (ntdddisk.h)

Devuelve información sobre el número de particiones, la firma de disco y las características de cada partición en un disco. (Los controladores de disquete no necesitan controlar esta solicitud).

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

Ninguno.

Longitud del búfer de entrada

Ninguno.

Búfer de salida

El controlador devuelve los datos DRIVE_LAYOUT_INFORMATION_EX en el búfer en Irp-AssociatedIrp.SystemBuffer>.

Longitud del búfer de salida

Parameters.DeviceIoControl.OutputBufferLength en la ubicación de pila de E/S del IRP indica el tamaño, en bytes, del búfer, que debe ser >= sizeof(DRIVE_LAYOUT_INFORMATION_EX). Tenga en cuenta que esta estructura contiene una matriz de tamaño variable de PARTITION_INFORMATION_EX elementos.

Para determinar el tamaño del búfer de salida necesario, el autor de la llamada debe enviar esta solicitud IOCTL en un bucle. Cada vez que la pila de almacenamiento rechaza el IOCTL con un mensaje de error que indica que el búfer era demasiado pequeño, el llamador debe duplicar el tamaño del búfer.

Bloque de estado

El campo Información se establece en el tamaño, en bytes, de los datos devueltos. El campo Estado se puede establecer en STATUS_SUCCESS, o posiblemente en STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES o STATUS_BUFFER_TOO_SMALL.

Requisitos

Requisito Valor
Header ntdddisk.h (include Ntdddisk.h)

Consulte también

DRIVE_LAYOUT_INFORMATION

PARTITION_INFORMATION

PARTITION_INFORMATION_EX