1с класс не зарегистрирован com

Если фоновый процесс COM-соединения завершается с ошибкой:

<Обработка.ОбменДаннымиXML.МодульОбъекта(15947)>: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Invalid class string

Нужно зарегистрировать библиотеку ComConnector comcntr.dll из каталога программы.

. Перед этим нужно отключить службу агента сервера 1С:Предприятия и все программы, использующие эту DLL .

В 32-битной версии сервера проблема решилась бы командой: regsvr32 «C:Program Files (x86)1cv88.3.5.1119incomcntr.dll»

но в 64-битной версии команда будет примерно такой * : C:WindowsSysWOW64
egsvr32 «C:Program Files (x86)1cv88.3.5.1119incomcntr.dll»

При удачном выполнении Вы увидите:

Если команда регистрации не помогла, то нужно предварительно удалить регистрацию библиотеки comcntr.dll, запустив ту же команду вызова regsvr32 с ключом /u

Если и это не помогло, попробуйте переустановить платформу 1С в режиме Исправить и отметьте COM соединение

Блог на коленке. IT и прочее

83.COMConnector класс не зарегистрирован

Случается, что при попытке подключения к информационной базе через com-соединение возникает ошибка при вызове конструктора (COMОбъект): «Класс не зарегистрирован» или «Недопустимая строка с указанием класса».

Первым делом необходимо зарегистрировать DLL в системе

При установке популярной программы бухгалтерского учёта «1С» (версии 8.3) или обновления программы с версии 8.2 на 8.3, а также запуска какой-либо соответствующей процедуры, юзер может получить сообщение «Ошибка 2147221164 0x80040154 класс не зарегистрирован», вызванное отсутствием регистрации класса. Данная ошибка может быть вызвана несоответствием версий 1С на сервере и клиентском ПК, а также отсутствием регистрации необходимого класса COMConnector (dll-библиотека comcntr.dll) в ОС Виндовс. В данном материале я расскажу о сути указанной дисфункции, а также поясню, как от неё избавиться.

Стандартное сообщение о возникшей дисфункции

Особенности возникшей дисфункции

Разбираемая мной ошибка 2147221164 0x80040154 в 1C обычно связана с соединением баз данных по COM-объекту, и может иметь несколько причин:

  • Несовпадение конфигурации 1С на сервере и локальном ПК (к примеру, на сервере используется версия 8.3, а на локальном ПК – версия 8.1);
  • Невозможность прямого обращения 64-битной 1С к 32-битному файлу comcntr.dll;
  • В ОС Виндовс не зарегистрирован вышеупомянутый файл comcntr.dll.

Разбираем устранение проблемы в 1C

Разберёмся со способами решения возникшей проблемы. Их два.

Способ №1. Регистрируем необходимые библиотеки

Если на ПК 32-битная ОС, то будет необходимо запустить командную строку с админ. правами, и там набрать:

C:WindowsSystem32
egsvr32 «C:Program Files (x86)1cv8XXXXXincomcntr.dll»

Вместо XXXXX будет нужно ввести номер вашей версии 1С, к примеру, это может быть 8.3.10.2252 или иная (пройдите по указанному пути, и просмотрите номер установленной у вас версии). После этого регистрация упомянутого dll будет завершена, и «Ошибка 2147221164 0x80040154 класс не зарегистрирован» должна исчезнуть.

Уведомление об успешной регистрации dll

Если на ПК 64-битная ОС, то данная строка должна выглядеть так:

C:WindowsSysWOW64
egsvr32 «C:Program Files (x86)1cv8ХХХХХincomcntr.dll»

Где ХХХХХ – номер вашей версии 1С

Способ №2. Создаём компоненты для исправления ошибки 2147221164 0x80040154

  1. Запустите консоль «Службы компонентов» (перейдите в «Панель управления», затем в «Администрирование», и здесь кликните на «Службы компонентов»);
  2. Здесь выберите «Мой компьютер» («Службы компонентов», затем «Компьютеры», и «Мой компьютер»). Наведите курсор на «Приложения COM+», нажмите на правую клавишу мыши, выберите «Создать» — «Приложение»;

Заключение

Исправление проблем с незарегистрированными классами в 1С обычно решается с помощью двух способов, обозначенных мной выше. Наибольшую эффективность показал второй из перечисленных способов, потому рекомендую воспользоваться алгоритмом его реализации для исправления ошибки 2147221164 0x80040154 на вашем PC.

Оцените статью
Добавить комментарий