Что означает код HRESULT 0xC00D36D6 (MF_E_NOT_AVAILABLE)?

 
Предыдущий Следующий
MF_E_NOT_FOUND MF_E_NO_CLOCK

MF_E_NOT_AVAILABLE

Что означает MF_E_NOT_AVAILABLE

MF_E_NOT_AVAILABLE (0xC00D36D6) — Запрошенное значение недоступно.

Это более узкий смысл, чем «не найдено». Объект понимает, какое значение или результат запрашивается, но в текущей конфигурации либо на текущем этапе жизни предоставить его не может. Например, нужные сведения могут появляться только после инициализации, выбора потока, согласования формата или получения первых данных.

Что проверить и как подтвердить исправление

Начните с точного метода, который вернул код, и выясните, при каких условиях его документация обещает выдавать результат. Сопоставьте состояние объекта, выбранные потоки, согласованный медиатип и наличие данных до и после момента, когда значение должно стать доступно.

Не заменяйте этот HRESULT автоматически на «объект отсутствует» и не создавайте дубликат ресурса. Если значение должно появиться позже, исправление — перенести запрос на правильную стадию или дождаться соответствующего события. Если оно зависит от конфигурации, измените именно эту конфигурацию и подтвердите, что тот же метод начинает возвращать значение без подстановки обходного результата.

Документация для результата 0xC00D36D6: Media Foundation architecture · Media sources.


Нужно найти другой код? Найти другой код состояния или ошибки.