IOCTL_CDROM_GET_PERFORMANCE IOCTL (ntddcdrm.h)

从设备检索支持的速度。 IOCTL_CDROM_GET_PERFORMANCE I/O 控制请求是 MMC 命令 GET PERFORMANCE 上的包装器。

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

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

CDROM_PERFORMANCE_REQUEST 请求性能数据。 CDROM_WRITE_SPEED_REQUEST 请求写入速度描述符。

输入缓冲区长度

CDROM_PERFORMANCE_REQUEST的长度。

输出缓冲区

对于请求类型 CdromWriteSpeedRequest,此 IOCTL 返回 CDROM_PERFORMANCE_HEADER 结构,后跟许多CDROM_WRITE_SPEED_DESCRIPTOR描述符。

对于请求类型 CdromPerformanceRequest,此 IOCTL 返回 CDROM_PERFORMANCE_HEADER 结构,后跟可选描述符。 此标头后面的描述符取决于CDROM_PERFORMANCE_HEADER结构的“例外”字段中的值。 如果 Except 为 false,则使用 CDROM_NOMINAL_PERFORMANCE_DESCRIPTOR;否则,使用CDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR。

输出缓冲区长度

CDROM_PERFORMANCE_HEADER的长度。

状态块

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

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

STATUS_BUFFER_TOO_SMALL

输出缓冲区长度小于所需长度。

STATUS_INFO_LENGTH_MISMATCH

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

STATUS_INVALID_DEVICE_REQUEST

设备不支持此请求。

STATUS_INVALID_PARAMETER

CDROM_PERFORMANCE_REQUEST标头不包含枚举指定的有效参数组合。

STATUS_SUCCESS

请求已成功完成。

要求

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

另请参阅

CDROM_PERFORMANCE_HEADER

CDROM_PERFORMANCE_REQUEST

CDROM_WRITE_SPEED_REQUEST

DeviceIoControl