IOCTL_DISK_GROW_PARTITION IOCTL (ntdddisk.h)
增加现有分区的大小。 它与 IOCTL_DISK_UPDATE_DRIVE_SIZE 结合使用来扩展磁盘,以便它包含新的可用空间区域,然后将磁盘上的现有分区扩展到新附加的可用空间中。 它采用 DISK_GROW_PARTITION 结构作为唯一参数。 若要使此作正常工作,指定分区后的空间必须可用。 不能将分区扩展到另一个现有分区。
主要代码
输入缓冲区
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。
要求
要求 | 价值 |
---|---|
标头 | ntdddisk.h (包括 Ntdddisk.h) |