Что означает код HRESULT 0xC00D36E7 (MF_E_PROPERTY_TYPE_NOT_ALLOWED)?

 
Предыдущий Следующий
MF_E_ATTRIBUTENOTFOUND MF_E_PROPERTY_TYPE_NOT_SUPPORTED

MF_E_PROPERTY_TYPE_NOT_ALLOWED

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

MF_E_PROPERTY_TYPE_NOT_ALLOWED (0xC00D36E7) — Указанный тип свойства недопустим в этом контексте.

Структура PROPVARIANT поддерживает много типов значений, но конкретное свойство допускает только ограниченный набор. Этот HRESULT означает, что значение сформировано синтаксически, однако его VARTYPE не разрешён контрактом текущего свойства.

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

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

Если допустимо штатное приведение к каноническому типу, выполняйте его до передачи значения и обязательно проверяйте результат преобразования. Не меняйте расширение медиафайла или кодек: эта ошибка возникает на уровне формы свойства, а не медиапотока.

Документация для результата 0xC00D36E7: IMFMetadata::SetProperty · PSCoerceToCanonicalValue · Wine: Media Foundation property HRESULTs.


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