| Предыдущий | Следующий |
| NS_E_CD_NO_BUFFERS_READ | NS_E_CD_NO_READER |
NS_E_CD_EMPTY_TRACK_QUEUE
Граница сбоя и её владелец
NS_E_CD_EMPTY_TRACK_QUEUE со значением 0xC00D11F9 фиксирует условие запуск воспроизведения или извлечения без дорожки компакт-диска в очереди. Вызов-источник и его состояние важнее для диагностики, чем более поздняя сводная ошибка Player.
Механизм возникновения
На контрольной точке этот результат Windows Media Player определяет вставленный носитель, считывает таблицу содержимого, создаёт объект чтения компакт-диска, затем выбирает цифровое извлечение аудио или аналоговый путь воспроизведения; при копировании добавляются создание пути назначения и кодировщик, выбранный в настройках копирования. Граница этой страницы — запуск воспроизведения или извлечения без дорожки компакт-диска в очереди.
Распознавание привода ещё не доказывает доступность читаемых аудиосекторов, устойчивого пути цифрового чтения или допустимого каталога копирования. Характерный сценарий: команда запускается до добавления выбранной дорожки текущего диска в очередь.
Поля трассировки, которые следует сохранить
| Данные | Почему эти данные важны: очередь треков CD пуста |
|---|---|
| Объект и действие, вернувшие ошибку | Идентификатор физического привода, поколение смены носителя, номер диска и трека, код чтения оглавления, цифровой или аналоговый режим, флаг коррекции ошибок, скорость чтения, состояние копирования, выходной формат и первая ошибка привода нижнего уровня |
| Решающие сведения | поколение очереди, число дорожек, выбранный элемент списка и команду запуска объекта чтения |
| Идентификатор поколения | Запишите то же поколение диска, устройства, задания или операции Player, которое вернуло этот результат; повторное подключение или смена носителя создаёт другой тест. |
| Исходный код | Сохраните первый код устройства, файловой системы, COM, кодека, DirectShow, IMAPI или BITS, полученный до того, как Player сопоставил его с этим результатом. |
| Контролируемое сравнение | Повторите исходную операцию в контролируемом сценарии, изменив только условие «очередь треков CD пуста», и сохраните API, входные данные и исходный HRESULT, относящиеся к состоянию «очередь треков CD пуста». |
Что доказывает сравнение
| Наблюдение | Толкование |
|---|---|
| Зафиксированные значения соответствуют границе | Устраните именно исходное условие «очередь треков CD пуста», затем создайте новый объект операции и сверьте код по сохранённым данным. |
| Сбой нижнего уровня произошёл до этого результата | Сохраните этот более ранний HRESULT или код устройства, поскольку он может быть лишь его отображением на уровне Player. |
| Тот же вызов проходит после одного изолированного изменения | Такое сравнение подтверждает диагноз очередь треков CD пуста, а не общий сбой установки. |
| После повторной проверки код изменился | Эта граница пройдена; диагностируйте новый HRESULT как следующую независимую стадию. |
Он ограничивает область сбоя запуск воспроизведения или извлечения без дорожки компакт-диска в очереди. Его наличие не доказывает общесистемный сбой мультимедиа; перед изменением не связанных компонентов Player определите операцию, которой принадлежит ошибка.
Путь принятия решения
- Запишите
0xC00D11F9Он, а также точную операцию Player/API и момент первого появления ошибки. - Сохраните поколение очереди, число дорожек, выбранный элемент списка и команду запуска объекта чтения; сделайте это до извлечения носителя, повторного подключения устройства, отмены задания или пересоздания объекта Player.
- Сопоставьте код с идентификатором физического привода, поколением смены носителя, номером диска и трека, кодом чтения оглавления, цифровым или аналоговым режимом, флагом коррекции ошибок, скоростью чтения, состоянием копирования, выходным форматом и первой ошибкой привода нижнего уровня.
- Повторите исходную операцию в контролируемом сценарии, изменив только условие «очередь треков CD пуста», и сохраните API, входные данные и исходный HRESULT, относящиеся к состоянию «очередь треков CD пуста».
- Создайте новое поколение операции и убедитесь, что исходный вызов проходит границу очередь треков CD пуста.
Близкие по смыслу коды
| Связанный код | Другая диагностическая граница |
|---|---|
NS_E_CD_NO_BUFFERS_READ | получение первых цифровых аудиобуферов от объекта чтения компакт-диска |
NS_E_CD_NO_READER | создание объекта чтения или фильтра Player для выбранного привода |
NS_E_CD_ISRC_INVALID | проверка International Standard Recording Code, связанного с дорожкой |
Безопасное исправление
Устраните именно исходное условие «очередь треков CD пуста», затем создайте новый объект операции и сверьте код по сохранённым данным. Он и повторите этот вызов.
При проверке он не полируйте диск, не меняйте драйвер, режим чтения и формат копирования в одном тесте; сохраните первую сбойную трек и изменяйте по одной границе за раз.
Исходные материалы
- О копировании содержимого CD.
- Объектная модель Windows Media Player.
- IDiscRecorder2::DisableMcn и уведомление о смене носителя.
- Структура WAVEFORMATEX.
Нужно найти другой код? Найти другой код состояния или ошибки.
