Поделиться через


IOCTL_CDROM_READ_Q_CHANNEL IOCTL (ntddcdrm.h)

Возвращает текущую позицию, каталог мультимедиа или данные отслеживания ISRC. Чтение текущей позиции устарело, начиная с Windows Vista.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Буфер в Irp->AssociatedIrp.SystemBuffer содержит структуру CDROM_SUB_Q_DATA_FORMAT с элементом Format, установленным в одном из следующих элементов:

IOCTL_CDROM_CURRENT_POSITION

IOCTL_CDROM_MEDIA_CATALOG

IOCTL_CDROM_TRACK_ISRC

Если формата задано значение IOCTL_CDROM_TRACK_ISRC, Track необходимо задать для отслеживания, для которого запрашивается данные ISRC.

Длина входного буфера

Длина Parameters.DeviceIoControl.OutputBufferLength в расположении ввода-вывода указывает размер буфера в байтах, который должен быть >= размер(SUB_Q_CHANNEL_DATA).

.

Выходной буфер

Драйвер возвращает сведения SUB_Q_CHANNEL_DATA в буфере в Irp->AssociatedIrp.SystemBuffer.

Длина выходного буфера

Длина SUB_Q_CHANNEL_DATA.

Блок состояния

В поле Information задано количество возвращаемых байтов. Поле состояния имеет значение STATUS_SUCCESS или, возможно, STATUS_BUFFER_TOO_SMALL, STATUS_IO_DEVICE_ERROR, STATUS_INSUFFICIENT_RESOURCES, STATUS_INVALID_DEVICE_REQUEST, STATUS_NO_MEDIA_IN_DEVICE, STATUS_DEVICE_NOT_READY, STATUS_IO_TIME_OUT или STATUS_VERIFY_REQUIRED.

Замечания

Начиная с Windows Vista драйверы классов CDROM не используют этот IOCTL с элементом формата, заданным для IOCTL_CDROM_CURRENT_POSITION. До Windows Vista этот IOCTL использовался для воспроизведения звука на старых CD-ROM дисках, поддерживающих прямой выход звука в оборудовании.

Клиентские приложения должны использовать API интерфейса управления мультимедиа (MCI) вместо выдачи этого IOCTL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Устаревшее, начиная с Windows Vista.
заголовка ntddcdrm.h (include Ntddcdrm.h)

См. также

SUB_Q_CHANNEL_DATA