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。
要求
要求 | 值 |
---|---|
Header | ntdddisk.h (包括 Ntdddisk.h) |