IOCTL_DISK_SET_DRIVE_LAYOUT_EX IOCTL (ntdddisk.h)
按指定对磁盘进行重新分区。 (软盘驱动程序不需要处理此请求。)
主要代码
输入缓冲区
Irp-AssociatedIrp.SystemBuffer> 处的缓冲区包含要设置的DRIVE_LAYOUT_INFORMATION_EX值。
输入缓冲区长度
IRP 的 I/O 堆栈位置中的 Parameters.DeviceIoControl.InputBufferLength 指示缓冲区的大小(以字节为单位),该大小必须 >= sizeof (DRIVE_LAYOUT_INFORMATION_EX) 。
输出缓冲区
返回 Irp-AssociatedIrp.SystemBuffer> 缓冲区的更新DRIVE_LAYOUT_INFORMATION_EX(可能带有修改后的分区号)。
输出缓冲区长度
DRIVE_LAYOUT_INFORMATION_EX的长度。
状态块
“ 信息” 字段设置为返回的信息的大小(以字节为单位)。 “ 状态” 字段可以设置为STATUS_SUCCESS,也可以设置为STATUS_INVALID_PARAMETER、STATUS_INFO_LENGTH_MISMATCH、STATUS_INSUFFICIENT_RESOURCES或STATUS_BUFFER_TOO_SMALL。
要求
要求 | 值 |
---|---|
Header | ntdddisk.h (包括 Ntdddisk.h) |