| Предыдущий | Следующий |
| 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.
Нужно найти другой код? Найти другой код состояния или ошибки.