HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) - PullRequest
28 голосов
/ 09 июня 2010

Я создаю ГИС-приложение, но всякий раз, когда я запускаю код, он выдает мне эту ошибку

System.Runtime.InteropServices.COMException не было обработано Получение фабрики классов COM для компонента с CLSID {FBF5715D-A05D-11D4-A64C-0008C711C8C1} не удалось из-за следующей ошибки: 80040154 Класс не зарегистрирован (исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).

Также в свойствах проекта отключена опция «Регистрация для взаимодействия с COM».

Ответы [ 2 ]

37 голосов
/ 01 ноября 2012

Это также может быть проблемой построения кода с использованием конфигурации 64 bit.Вы можете попробовать выбрать x86 в качестве платформы сборки, которая может решить эту проблему.Для этого щелкните правой кнопкой мыши решение и выберите Configuration Manager. Здесь вы можете изменить Platform проекта, используя 32-разрядный файл .dll, на x86

.
17 голосов
/ 09 июня 2010

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

Если вы знаете, какой это компонент, вы можете использовать regsvr32.exe, чтобы зарегистрировать его, просто откройте командную строку, перейдите в каталог, в котором находится компонент, и введите regsvr32 filename.dll (при условии, что это dll), если он работает, попробуйте запустить код еще раз, иначе вернитесь сюда с ошибкой.

Если вы не знаете, какой это компонент, попробуйте переустановить / восстановить программное обеспечение ГИС (я предполагаю, что вы установили некоторое программное обеспечение ГИС, которое включает компонент, который вы пытаетесь использовать).

...