IOCTL_DISK_GROW_PARTITION IOCTL (ntdddisk.h)

增加现有分区的大小。 它与 IOCTL_DISK_UPDATE_DRIVE_SIZE 结合使用来扩展磁盘,使其包含新的可用空间区域,然后将磁盘上的现有分区扩展到新附加的可用空间中。 它采用 DISK_GROW_PARTITION 结构作为唯一参数。 若要使此操作正常工作,指定分区后的空间必须可用。 分区不能扩展到另一个现有分区。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

Irp-AssociatedIrp.SystemBuffer> 处的缓冲区包含DISK_GROW_PARTITION值 , 这些值将用于增加分区的大小。

输入缓冲区长度

IRP 的 I/O 堆栈位置中的 Parameters.DeviceIoControl.InputBufferLength 指示提供给驱动程序的缓冲区的大小(以字节为单位),该缓冲区必须为 >= sizeof (DISK_GROW_PARTITION) 。 否则,驱动程序返回错误状态为STATUS_BUFFER_TOO_SMALL。

输出缓冲区

无。

输出缓冲区长度

无。

状态块

“状态”字段设置为STATUS_SUCCESS,或者可能设置为STATUS_BUFFER_TOO_SMALL、STATUS_INVALID_PARAMETER、STATUS_UNSUCCESSFUL或STATUS_DRIVER_INTERNAL_ERROR。

要求

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

另请参阅

DISK_GROW_PARTITION