Что означает код HRESULT 0x800300F0 (STG_E_PROPSETMISMATCHED)?

 
Предыдущий Следующий
STG_E_MEDIUMFULL STG_E_ABNORMALAPIEXIT

STG_E_PROPSETMISMATCHED

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

STG_E_PROPSETMISMATCHED означает, что свойство записывается в набор свойств в представлении, которое этот набор не поддерживает. Типичный случай — попытка сохранить сложное значение в simple property set.

Что проверить

  • Сверьте схему property set и ожидаемый VARTYPE.
  • Проверьте, не передаётся ли vector, BLOB или другой сложный тип туда, где разрешены только простые значения.
  • Сопоставьте producer и consumer схемы при переносе данных между версиями.

Как исправлять

Используйте допустимое представление свойства либо другой тип property set. Не сериализуйте сложное значение в случайный простой тип только ради обхода ошибки: consumer должен однозначно понимать сохранённую схему и способ представления данных.

Технические ссылки


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