Что означает код HRESULT 0xC00D36BD (MF_E_INVALIDTYPE)?

 
Предыдущий Следующий
MF_E_INVALIDNAME MF_E_INVALID_FILE_FORMAT

MF_E_INVALIDTYPE

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

MF_E_INVALIDTYPE (0xC00D36BD) — Недопустимый тип.

Контекст результата 0xC00D36BD — подсистема «COM/WinRT» и область «контракт вызываемого interface, аргументы и state объекта». Условие «недопустимый тип» указывает на тему «mf, недопустимый, тип», а не на общий отказ всего компонента.

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

Не начинайте с общего сброса компонента: проверьте допустимость и структуру входных данных первого неуспешного вызова. При 0xC00D36BD и условии «недопустимый тип» сверьте тип, размер, диапазон, маску флагов и принадлежность каждого дескриптора текущему объекту именно по контракту первого неуспешного метода.

Перед повтором 0xC00D36BD зафиксируйте IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IMFAttributes. Различия по теме «mf, недопустимый, тип» для 0xC00D36BD покажут, изменился ли первый неуспешный этап.

Коррекция для 0xC00D36BD должна быть предметной: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Для 0xC00D36BD и сообщения «недопустимый тип» общий сброс допустим лишь как контроль, но не как доказательство причины.

Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0xC00D36BD, а заведомо неверный вход отклоняется на ожидаемой границе.

Документация для результата 0xC00D36BD: Media Foundation architecture · Media Foundation error codes · About Media Foundation transforms.


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