IOCTL_CDROM_GET_PERFORMANCE IOCTL (ntddcdrm.h)
从设备检索支持的速度。 IOCTL_CDROM_GET_PERFORMANCE I/O 控制请求是 MMC 命令 GET PERFORMANCE 上的包装器。
若要执行此操作,请使用 IOCTL_CDROM_GET_PERFORMANCE 作为 dwIoControlCode 参数调用 DeviceIoControl 函数。
主要代码
输入缓冲区
CDROM_PERFORMANCE_REQUEST 请求性能数据。 CDROM_WRITE_SPEED_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。
输出缓冲区长度
状态块
“ 信息” 字段设置为返回的字节数。
由于状态代码从其他 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) |