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