IOCTL_CDROM_READ_Q_CHANNEL IOCTL (ntddcdrm.h)
傳回目前的位置、媒體目錄或ISRC追蹤數據。 讀取目前的位置已過時,從 Windows Vista 開始。
主要程序代碼
輸入緩衝區
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資訊。
輸出緩衝區長度
狀態區塊
[ 資訊 ] 位元位會設定為傳回的位元組數目。 [ 狀態 ] 字段會設定為 [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) |