| Предыдущий | Следующий |
| REGDB_E_CLASSNOTREG | REGDB_E_BADTHREADINGMODEL |
REGDB_E_IIDNOTREG
Что означает REGDB_E_IIDNOTREG
REGDB_E_IIDNOTREG (0X80040155) означает отсутствие регистрации запрошенного COM-интерфейса. Класс при этом может успешно активироваться: проблема проявляется, когда COM требуется описание IID для межпроцессного/межапартаментного marshaling.
Что проверить
- Запишите IID и проверьте
HKCR\Interface\{IID}в правильной 32/64-bit registry view, включаяProxyStubClsid32и/или TypeLib metadata. - Сравните in-proc
QueryInterfaceи вызов через границу процесса. Если локальный интерфейс работает, а marshaled-вызов падает, это усиливает гипотезу о proxy/stub/type-library registration. - Проверьте bitness proxy/stub DLL и наличие именно той версии интерфейса, IID которой запрашивает клиент.
Не исправляйте CLSID registration, если класс уже создаётся. REGDB_E_CLASSNOTREG относится к отсутствующему классу; здесь цель диагностики — конкретный IID и его marshaling support.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.