IOCTL_CDROM_READ_TOC_EX IOCTL (ntddcdrm.h)
Запрашивает у целевого устройства оглавление (ОГЛА), область памяти программы (PMA) и абсолютное время в pregroove (ATIP). Если носитель не является компакт-диском и не поддерживает ОГЛА, этот IOCTL возвращает сведения, аналогичные оглавлиям ОГЛА. Это необходимо для совместимости с некоторыми устаревшими средами инициатора.
Основной код
Входной буфер
Irp->AssociatedIrp.SystemBuffer указывает на буфер типа CDROM_READ_TOC_EX содержимое которого указывает, какие сведения следует извлечь с целевого устройства.
Parameters.Read.Length в расположении стека ввода-вывода указывает размер (в байтах) сведений, извлекаемых с целевого устройства.
Длина входного буфера
Parameters.DeviceIoControl.InputBufferLength в расположении стека ввода-вывода указывает размер входного буфера в байтах, который должен иметь >значение sizeof(CDROM_READ_TOC_EX).
Выходной буфер
Драйвер возвращает данные запроса в буфере по адресу Irp-AssociatedIrp.SystemBuffer>.
Длина выходного буфера
Parameters.DeviceIoControl.OutputBufferLength в расположении стека ввода-вывода указывает размер выходного буфера в байтах, который должен быть >= MINIMUM_CDROM_READ_TOC_EX_SIZE.
Блок состояния
В поле Сведения задано количество возвращаемых байтов. Для поля Состояние задано значение STATUS_SUCCESS или, возможно, STATUS_BUFFER_TOO_SMALL или STATUS_INSUFFICIENT_RESOURCES.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Операционных системах Windows XP и более поздних версий. |
Верхняя часть | ntddcdrm.h (включая Ntddcdrm.h) |