IOCTL_CDROM_SEND_OPC_INFORMATION IOCTL (ntddcdrm.h)

IOCTL_CDROM_SEND_OPC_INFORMATION控制代码可用于文件系统和其他实现中,这些实现需要提前执行最佳电源校准 (OPC) 过程,以便第一次流式写入不必等待过程完成。 光驱动器执行 OPC 过程,以确定写入期间激光的最佳功率。 该过程是确保质量所必需的,但它会磨损介质,不应过于频繁地执行。

若要执行此操作,请使用 IOCTL_CDROM_SEND_OPC_INFORMATION 作为 dwIoControlCode 参数调用 DeviceIoControl 函数。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

CDROM_SIMPLE_OPC_INFO

输入缓冲区长度

CDROM_SIMPLE_OPC_INFO的长度。

输出缓冲区

无。

输出缓冲区长度

无。

状态块

信息” 字段设置为返回的字节数。

由于状态代码从其他 API 传播,因此“ 状态” 字段可以设置为 (但不限于) 以下内容:

STATUS_INFO_LENGTH_MISMATCH

输入缓冲区长度小于所需的长度。

STATUS_INVALID_PARAMETER

请求类型不是 SimpleOpcInfo

STATUS_SUCCESS

请求已成功完成。

注解

IOCTL_CDROM_SEND_OPC_INFORMATION IOCTL 是 MMC 规范的 SEND OPC INFORMATION 命令的包装器。 Exclude0Exclude1 字段直接映射到具有相同名称的 SEND OPC INFORMATION 字段。

如果失败,此 IOCTL 将返回标准错误,例如STATUS_DEVICE_NOT_READY、STATUS_IO_TIMEOUT STATUS_IO_DEVICE_ERROR。

要求

要求
Header ntddcdrm.h (包括 Winioctl.h)

另请参阅

CDROM_SIMPLE_OPC_INFO

DeviceIoControl

IOCTL_CDROM_SEND_OPC_INFORMATION