CD-ROM I/O 控制代码

CD-ROM 设备驱动程序的所有公共 I/O 控制代码都使用缓冲 I/O。 因此,这些请求的输入或输出数据位于 Irp-AssociatedIrp.SystemBuffer>。

CD-ROM 设备的类驱动程序处理其他公共 I/O 控制代码,以及本节中所述的代码。 有关存储类驱动程序要求的详细信息,请参阅 常规存储 I/O 控制代码

I/O 控制代码 说明
IOCTL_CDROM_CHECK_VERIFY 此 IOCTL 将替换为 IOCTL_STORAGE_CHECK_VERIFY。 这两个 IOCTL 之间的唯一区别是基值。
IOCTL_CDROM_CLOSE_DOOR 此 I/O 控制代码已替换为 IOCTL_STORAGE_LOAD_MEDIA
IOCTL_CDROM_ENABLE_STREAMING 针对原始读取和写入请求,按句柄启用或禁用 CDROM 流模式。 若要执行此操作,请调用 DeviceIoControl 函数,并将 IOCTL_CDROM_ENABLE_STREAMING I/O 控制请求指定为 dwIoControlCode 参数。
IOCTL_CDROM_EXCLUSIVE_ACCESS 指示 CD-ROM 类驱动程序导出 CD-ROM 设备的访问状态,锁定 CD-ROM 设备以便进行独占访问,并解锁 CD-ROM 设备以便进行独占访问。
IOCTL_CDROM_FIND_NEW_DEVICES 此 IOCTL 将替换为 IOCTL_STORAGE_FIND_NEW_DEVICES。 这两个 IOCTL 之间的唯一区别是基值。
IOCTL_CDROM_GET_CONFIGURATION 从 CD-ROM 设备请求功能和配置文件信息。
IOCTL_CDROM_GET_DRIVE_GEOMETRY 返回有关 CD-ROM 的几何 (介质类型、柱面数、每个柱面的轨迹、每个轨道的扇区以及每个扇区) 的字节数的信息。
IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX 返回有关 CD-ROM 的几何图形 (媒体类型、柱面数、每个柱面的轨迹、每个轨道的扇区以及每个扇区) 的字节数的信息。
IOCTL_CDROM_GET_INQUIRY_DATA 返回 CD-ROM 设备的 SCSI 查询数据。 当设备已使用 IOCTL_CDROM_EXCLUSIVE_ACCESS独占锁定时,可以使用此 IOCTL。
IOCTL_CDROM_GET_LAST_SESSION 查询设备中的第一个完整会话编号、最后一个完整会话编号和最后一个完整会话起始地址。
IOCTL_CDROM_GET_PERFORMANCE 从设备检索支持的速度。 IOCTL_CDROM_GET_PERFORMANCE I/O 控制请求是 MMC 命令 GET PERFORMANCE 上的包装器。
IOCTL_CDROM_LOAD_MEDIA 将突出的 CDROM 托盘拉回到驱动器中。
IOCTL_CDROM_RAW_READ 在原始模式下从 CD-ROM 读取数据。
IOCTL_CDROM_READ_Q_CHANNEL 返回 (过时) 、媒体目录或 ISRC 跟踪数据的位置。
IOCTL_CDROM_READ_TOC 已过时。 返回媒体的目录。
IOCTL_CDROM_READ_TOC_EX 在目标设备中查询目录 (TOC) 、程序内存区域 (PMA) ,以及 pregroove (ATIP) 中的绝对时间。
IOCTL_CDROM_SEND_OPC_INFORMATION 用于文件系统和其他实现,这些实现需要提前执行最佳电源校准 (OPC) 过程,以便第一次流式写入不必等待过程完成。
IOCTL_CDROM_SET_SPEED 设置 CD-ROM 驱动器的轴速。

媒体播放控件

从 Windows Vista 开始,CDROM 类驱动程序不使用这些 IOCTL。 在 Windows Vista 之前,这些 IOCTL 用于在支持硬件中直接音频输出的旧 CD-ROM 驱动器上播放音频。

客户端应用程序应使用 媒体控制接口 (MCI) API,而不是发出这些 IOCTL。

I/O 控制代码 说明
IOCTL_CDROM_GET_CONTROL 确定当前音频播放模式。
IOCTL_CDROM_GET_VOLUME 确定其每个设备音频端口的当前音量。
IOCTL_CDROM_PAUSE_AUDIO 暂停音频播放。
IOCTL_CDROM_PLAY_AUDIO_MSF 播放指定的媒体范围。
IOCTL_CDROM_READ_Q_CHANNEL 返回 (过时) 、媒体目录或 ISRC 跟踪数据的位置。
IOCTL_CDROM_RESUME_AUDIO 恢复暂停的音频操作。
IOCTL_CDROM_SEEK_AUDIO_MSF 将头移动到媒体上的指定 MSF。
IOCTL_CDROM_SET_VOLUME 重置其设备的音频端口的音量。
IOCTL_CDROM_STOP_AUDIO 结束音频播放。