다음을 통해 공유


IOCTL_CDROM_READ_Q_CHANNEL IOCTL(ntddcdrm.h)

현재 위치, 미디어 카탈로그 또는 ISRC 트랙 데이터를 반환합니다. 현재 위치를 읽는 것은 Windows Vista부터 사용되지 않습니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

Irp->AssociatedIrp.SystemBuffer 버퍼에는 Format 멤버가 다음 중 하나로 설정된 CDROM_SUB_Q_DATA_FORMAT 구조체가 포함되어 있습니다.

IOCTL_CDROM_CURRENT_POSITION

IOCTL_CDROM_MEDIA_CATALOG

IOCTL_CDROM_TRACK_ISRC

서식 IOCTL_CDROM_TRACK_ISRC 설정된 경우 추적 ISRC 데이터가 요청된 트랙으로 설정해야 합니다.

입력 버퍼 길이

I/O 스택 위치에 있는 Parameters.DeviceIoControl.OutputBufferLength 길이는 버퍼의 크기(바이트)를 나타내며 >= sizeof(SUB_Q_CHANNEL_DATA)이어야 합니다.

.

출력 버퍼

드라이버는 Irp->AssociatedIrp.SystemBuffer버퍼의 SUB_Q_CHANNEL_DATA 정보를 반환합니다.

출력 버퍼 길이

SUB_Q_CHANNEL_DATA길이입니다.

상태 블록

정보 필드는 반환된 바이트 수로 설정됩니다. 상태 필드는 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_CDROM_CURRENT_POSITION 설정된 상태에서 이 IOCTL을 사용하지 않습니다. Windows Vista 이전에는 이 IOCTL이 하드웨어에서 직접 오디오 출력을 지원하는 이전 CD-ROM 드라이브에서 오디오 재생에 사용되었습니다.

클라이언트 애플리케이션은 이 IOCTL을 실행하는 대신 MCI(Media Control Interface) API 사용해야 합니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows Vista부터 사용되지 않습니다.
헤더 ntddcdrm.h(Ntddcdrm.h 포함)

참고 항목

SUB_Q_CHANNEL_DATA