IOCTL_STORAGE_REINITIALIZE_MEDIA IOCTL (ntddstor.h)
驱动程序可以发出 IOCTL_STORAGE_REINITIALIZE_MEDIA 控制代码,以将擦除过程卸载到存储设备。
主要代码
输入缓冲区
对于 Windows Server 2022 及更高版本,包含可选的 STORAGE_REINITIALIZE_MEDIA 结构,其中包含清理选项或 NULL。 对于早期操作系统版本,输入缓冲区为 NULL。
输入缓冲区长度
对于Windows 10版本 21H1 及更高版本,Parameters.DeviceIoControl.InputBufferLength 指示 Irp-AssociatedIrp.SystemBuffer> 的参数缓冲区的大小(以字节为单位),如果 Parameters.DeviceIoControl.InputBuffer != NULL,则参数缓冲区必须 >= sizeof (STORAGE_REINITIALIZE_MEDIA) ;否则为零。 对于早期操作系统版本,输入缓冲区长度为零。
输出缓冲区
无。
输出缓冲区长度
无。
输入/输出缓冲区
N/A
输入/输出缓冲区长度
N/A
状态块
如果调用成功完成,则 “信息” 字段设置为零;否则,它设置为非零值。
注解
IOCTL_STORAGE_REINITIALIZE_MEDIA 将擦除卸载到存储设备。 在命令完成后,无法保证存储设备数据的成功删除或可恢复性。
此 IOCTL 仅限于桌面设备系列中设备上的数据磁盘。 在 Windows 预安装环境 (WinPE) 中,启动磁盘和数据磁盘都支持此 IOCTL。
在早期 OS 版本中,实现不需要任何输入,并且除了状态之外,不返回其他输出。
调用方应先调用 FSCTL_LOCK_VOLUME ,然后再调用此 IOCTL 以刷新上层中的缓存数据。 在向设备发出命令之前,不会等待未完成的请求完成。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 版本 1607 |
最低受支持的服务器 | Windows Server 2016 |
标头 | ntddstor.h |