Site icon EfmSoft

Что означает код HRESULT 0x800288CF (TYPE_E_INVALIDID)?

 
Предыдущий Следующий
TYPE_E_DUPLICATEID TYPE_E_TYPEMISMATCH

TYPE_E_INVALIDID

Контракт подсистемы

При результате TYPE_E_INVALIDID (0X800288CF) локализуйте операцию внутри COM Automation type library and ITypeInfo metadata resolution. Практическая граница — некорректный ID; поздняя обёртка может скрыть исходный command, policy или lifecycle-state.

Type compiler, importer, proxy generator и runtime ITypeInfo consumer могут возвращать тот же TYPE_E_* на разных boundaries, поэтому producer/toolchain version входит в evidence.

Конкретные признаки из исходного EN-описания

Поля для корреляции

После изменения IDL/type library проверяйте согласованность 32/64-bit artifacts и imported versions, а не копируйте отдельную DLL как универсальное исправление.

Как проверить гипотезу

Проверьте condition «некорректный ID» на том же API и object generation. Изменение одного prerequisite должно убрать этот HRESULT или сдвинуть первый отказ к другой конкретной границе.

Проверьте metadata graph для условия «некорректный ID»: registration, module kind, member lookup, TYPEKIND и imported library version дают разные TYPE_E_* даже в одном toolchain.

Безопасное восстановление

Исправьте metadata/type-library condition «некорректный ID», пересоберите или зарегистрируйте согласованный versioned artifact и повторите минимальный LoadTypeLib/ITypeInfo scenario.

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


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

Exit mobile version