IOCTL_DISK_GET_DRIVE_LAYOUT IOCTL (ntdddisk.h)

返回有关磁盘上每个分区的分区数、磁盘签名和功能的信息。 (软盘驱动程序无需处理此请求。)

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

无。

输入缓冲区长度

无。

输出缓冲区

驱动程序返回 Irp-AssociatedIrp.SystemBuffer> 缓冲区中的DRIVE_LAYOUT_INFORMATION数据。

输出缓冲区长度

IRP 的 I/O 堆栈位置中的 Parameters.DeviceIoControl.OutputBufferLength 指示缓冲区的大小(以字节为单位),该大小必须 >= sizeof (DRIVE_LAYOUT_INFORMATION) 。 请注意,此结构包含 PARTITION_INFORMATION元素的 可变大小数组。

状态块

信息” 字段设置为返回的数据的大小(以字节为单位)。 “ 状态” 字段可以设置为STATUS_SUCCESS,也可以设置为STATUS_DEVICE_OFF_LINE、STATUS_INFO_LENGTH_MISMATCH、STATUS_INSUFFICIENT_RESOURCES或STATUS_BUFFER_TOO_SMALL。

要求

要求
Header ntdddisk.h (包括 Ntdddisk.h)

另请参阅

DRIVE_LAYOUT_INFORMATION

PARTITION_INFORMATION