IOCTL_CDROM_READ_Q_CHANNEL IOCTL (ntddcdrm.h)

傳回目前的位置、媒體目錄或ISRC追蹤數據。 讀取目前的位置已過時,從 Windows Vista 開始。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

Irp-AssociatedIrp.SystemBuffer> 上的緩衝區包含格式成員設定為下列其中一項的CDROM_SUB_Q_DATA_FORMAT結構:

IOCTL_CDROM_CURRENT_POSITION

IOCTL_CDROM_MEDIA_CATALOG

IOCTL_CDROM_TRACK_ISRC

如果 Format 設定為 IOCTL_CDROM_TRACK_ISRC, 則 Track 必須設定為要求 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 與格式成員設定為 IOCTL_CDROM_CURRENT_POSITION。 在 Windows Vista 之前,此 IOCTL 用於支援硬體中直接音訊輸出的舊版 CD-ROM 磁碟驅動器上的音訊播放。

用戶端應用程式應該使用 媒體控制介面 (MCI) API ,而不是發出此 IOCTL。

規格需求

需求
最低支援的用戶端 已過時,從 Windows Vista 開始。
標頭 ntddcdrm.h (包含 Ntddcdrm.h)

另請參閱

SUB_Q_CHANNEL_DATA