Site icon EfmSoft

Что означает код HRESULT 0x80028028 (TYPE_E_QUALIFIEDNAMEDISALLOWED)?

 
Предыдущий Следующий
TYPE_E_UNDEFINEDTYPE TYPE_E_INVALIDSTATE

TYPE_E_QUALIFIEDNAMEDISALLOWED

Объект и состояние

Этот HRESULT 0X80028028 фиксирует условие qualified name запрещено в подсистеме COM Automation type library and ITypeInfo metadata resolution. Для корректного сравнения нужны один и тот же API, сопоставимый object state и первый возврат до recovery.

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

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

Минимальный trace

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

Причинная граница

Сравните failing и working trace той же операции. Поле или state, соответствующий «qualified name запрещено», должен быть единственным существенным отличием.

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

Подтверждение результата

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

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


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

Exit mobile version