1с Ошибка При Вызове Конструктора Сомобъект • Настройка dcom-сервера

Инструменты-помощники системного администратора: 💫 💫 💫 💫 💫 💫 читайте на сайте

Если на ПК 32-битная ОС, то будет необходимо запустить командную строку с админ. правами, и там набрать: Запустите консоль Службы компонентов перейдите в Панель управления , затем в Администрирование , и здесь кликните на Службы компонентов ;. Если вы хотите подробнее узнать об описанных особенностях, вы можете бесплатно скачать конфигурацию и демонстрационную базу продукта, для чего необходимо оформить предварительный заказ на Инфостарте на продукт 2iS Интеграция.

Устранение ошибок подключения через COM-соединение. Устранение ошибок подключения через COM-соединение 1с регистрация com компоненты

В этой статье я расскажу о многих особенностях взаимодействия между базами 1С по COM технологии, накопленных за годы развития и использования интеграционного коммерческого продукта 2iS:Интеграция нашей компании 2iS.

COM-клиент — процесс(поток) ОС, запросивший создание COM-объекта

Com-соединитель — COM-объект V8X.ComСonnector для создания внешних соединений с базами 1С

Automation-сервер — он же OLE-сервер, COM-объект V8X.Application для создания приложений 1С

Издание платформы — подстрока до 2-й точки версии платформы (например 8.2, 8.3)

Сборка платформы — полная строка версии платформы (например 8.2.19.130, 8.2.16.352)

1с Ошибка При Вызове Конструктора Сомобъект • Настройка dcom-сервера

1с класс не зарегистрирован com - Все о Windows 10
Неполадки появляются на самом сервере с БД. Корень проблемы в том, что версии 1С архитектуры х64 не могут напрямую обратиться к 32-битной библиотеке comcntr.dll. В этом случае соединение происходит при помощи приложений СОМ+, способных взаимодействовать с библиотеками х86.
Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Мнение эксперта
Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Если у вас не получается разобраться самостоятельно, пишите мне, я помогу!
Задать вопрос эксперту
когда я попытался вызвать службу wcf, получил ошибку 80040154 класс не зарегистрирован исключение из HRESULT 0x80040154 REGDB_E_CLASSNOTREG. Если самостоятельно разобраться в нюансах не получается, пишите мне!

2147221164 (0x80040154): Класс не зарегистрирован — что делать?

  1. Создаем базовую внешнюю обработку с набором общих методов для приема вызовов от COM-клиента на стороне COM-сервера
  2. Теперь нам не нужно изменять конфигурацию базы COM-сервера, чтобы использовать там сложный функционал.
  3. В нашем продукте мы назвали ее «Сервисный процессор». На ее передачу и инициализацию уходит около 1 сек
  4. Проектируем взаимодействие с COM-сервером по принципу «минимум COM-вызовов”, т.е. готовим все нужное на стороне COM-клиента и передаем в качестве параметров одного большого вызова»
  5. Создаем встроенную обработку для выполнения такого вызова в COM-клиенте
  6. Передача агрегатных объектов
  7. Сериализуем все входные параметры на стороне COM-клиента
  8. Десериализуем все входные параметры на стороне COM-сервера
  9. Сериализуем все выходные параметры на стороне COM-сервера
  10. Десериализуем все выходные параметры на стороне COM-клиента
  11. В нашем продукте мы назвали ее «Выполнение сервиса инфобазы»
  12. Для многократных COM-вызовов предусматриваем регулируемую частоту
  13. Например, информационные вызовы могут выполняться с изменяемой частотой

Подключение внешнего соединения

  1. Пример
    КомСоединитель = Новый COMОбъект(“V83.ComConnector”, ИмяКомпьютера);
    ВнешнееСоединение = КомСоединитель.Connect(СтрокаСоединения);
  2. Выполнение метода Connect (создание внешнего соединения)
  3. Создание сеанса — 1 сек
  4. Инициализация сеанса — сек
  5. ПередНачаломРаботыСистемы (только для Automation-сервера)
  6. ПриНачалеРаботыСистемы
  7. Инициализация параметров сеанса
  8. Подгрузка нужных метаданных
  1. Минимальные для внутрипроцессного Com-сервера
  2. Средние для локального внепроцессного Com-сервера
  3. От средних до больших для нелокального внепроцессного Cоm-сервера в зависимости от качества канала связи

1с Ошибка При Вызове Конструктора Сомобъект • Настройка dcom-сервера

перейдите в каталог .Net framework и зарегистрируйте их соответствующую dll с помощью команду regsvr32.exe путь dll пробел. Я компилировал таргетинг моего приложения любой CPU и главная проблема оказалась в том, что adobe reader был установлен старше v10. А следовательно используя ее для COM взаимодействия, вы значительно снижаете затраты на возможные переходы между COM и веб-сервисом в обоих направлениях.

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

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

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

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

1с Ошибка При Вызове Конструктора Сомобъект • Настройка dcom-сервера

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

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

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

Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Мнение эксперта
Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Если у вас не получается разобраться самостоятельно, пишите мне, я помогу!
Задать вопрос эксперту
После этого регистрация упомянутого dll будет завершена, и Ошибка 2147221164 0x80040154 класс не зарегистрирован должна исчезнуть. Если самостоятельно разобраться в нюансах не получается, пишите мне!

1С ошибка при вызове конструктора (COMOбъект) класс не зарегистрирован

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

когда я попытался вызвать службу wcf, получил ошибку » 80040154 класс не зарегистрирован (исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG» похоже, что программа или процесс, который вы пытаетесь инициализировать, не установлен на вашем компьютере, имеет поврежденную установку или должен быть зарегистрирован. Переходим по пути 1CV8_ComConnect Роли CreatorOwner Пользователи и добавляем новую учетную запись User1CV82, под которой будет производиться запуск сервера 1С версии 8.

Справляемся с проблемой

Заканчиваем с теорией и переходим к практике – пробуем исправить ошибку «2147221164 (0x80040154): Класс не зарегистрирован».

Регистрируем библиотеку comcntr.dll

Ошибка может проявиться, если не зарегистрирована библиотека comcntr.dll. Решаем ее следующим образом. Вызываем строку «Выполнить» (кликнув ПКМ по кнопке «Пуск») и вводим regsvr32.exe «C:\Program Files(86)\1cv82\8.3.XX.XXXX\bin\comcntr.dll». Нажимаем ОК и, если все прошло корректно, то мы увидим сообщение об успешной регистрации библиотеки.

Создаем новое приложение СОМ+

1с Ошибка При Вызове Конструктора Сомобъект • Настройка dcom-сервера

  1. В открывшемся Мастере нажимаем «Далее» и, когда в следующем окне нам предложат действие на выбор, кликаем «Создать новое приложение».
  2. В соответствующей строке присваиваем новому приложению имя, которое будет понятно не только нам, но и другим пользователям при дальнейшей работе, например 1CV8_ComConnect. Здесь же выбираем способ активации – «Серверное приложение».

Мы рассмотрели соединение с базой из программы 1С:Предприятие версии 8.3. Если планируется устанавливать коннект с БД 8.1 из версии 1С 8.2, то нужно добавить нового пользователя. Переходим по пути 1CV8_ComConnect → Роли → CreatorOwner → Пользователи и добавляем новую учетную запись User1CV82, под которой будет производиться запуск сервера 1С версии 8.2.

Если спокойно и внимательно следовать алгоритму, то исправление ошибки на деле окажется простым и быстрым. Благодаря вышеописанным действиям программа 1С версий 8.2 и 8.3 сможет обратиться за информацией к библиотеке comcntr.dll и ошибка «2147221164 (0x80040154): Класс не зарегистрирован» больше не возникнет.

Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Мнение эксперта
Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Если у вас не получается разобраться самостоятельно, пишите мне, я помогу!
Задать вопрос эксперту
Разбираемая мной ошибка 2147221164 0x80040154 в 1C обычно связана с соединением баз данных по COM-объекту, и может иметь несколько причин. Если самостоятельно разобраться в нюансах не получается, пишите мне!

Ошибки после синхронизации 1С: класс не зарегистрирован и процесс сервера не может быть запущен В Смоленске в Легасофт.

Понравилось? Поделись с друзьями:
Оставить отзыв

Публикуя свою персональную информацию в открытом доступе на нашем сайте вы, даете согласие на обработку персональных данных и самостоятельно несете ответственность за содержание высказываний, мнений и предоставляемых данных. Мы никак не используем, не продаем и не передаем ваши данные третьим лицам.

Контакты · Политика конфиденциальности · О проекте · Популярные разделы по сайта · Реклама · Согласие на обработку персональных данных · Пользовательское соглашение