Ошибка 2147221164 0x80040154 в 1С

Ошибка 2147221164 0x80040154 в 1С

Всем привет, сегодня рассмотрим, вопрос из за чего происходит ошибка 2147221164 0x80040154 в 1С и как ее решать. И так немного теории 🙂 , когда информационные базы данных, обмениваются между собой информацией, то они задействуют COM-соединение. И так начинается попытка соединения из конфигурации 8.3 с конфигурацией 8.1, в итоге может выскочить При попытке соединения с COM-сервером произошла следующая ошибка:

Ошибка при вызове конструктора (COMОбъект): -2147221164(0x80040154): Класс не зарегистрирован”. Смотрим как решить.

Вот более детально как выглядит ошибка 2147221164

Ошибка 2147221164-2
Ошибка 2147221164 0x80040154 в 1С

Ошибка 2147221164 0x80040154 появляется, исключительно на сервере с базой данных, если выполнить соединение локально, все будет ок. На сервере 1С установлены версии 8.1 (x86), 8.2 (x64), 8.3 (x64). Источник проблем в версии 64 битной, так как ей требуется обратиться к  32-х библиотеке comcntr.dll, а на прямую это не реально, что ведет к использованию 64-х битного COM+, который умеет работать с 32-х библиотеками.

Исправляем 2147221164

На сервере 1С выполняем следующие действия.

  1. Для исправления 2147221164 открываем консоль «Службы компонентов» (Панель управления -> Администрирование -> Службы компонентов).
  2. В этой консоли открываем Службы компонентов -> Компьютеры -> Мой компьютер. Правый клик по пункту“Приложения COM+”, Создать -> Приложение.
  3. Далее. В окне «Установка или создание нового приложения» выбираем «Создать новое приложение».
  4. Вводим понятное имя для нового приложения, например, “V8_ComConnector”, способ активации — «Серверное приложение».
  5. В качестве учетной записи для запуска приложения выбираем “Указанный пользователь” и через кнопку “Обзор” находим учетку, под которой запускается сервер 1С v 8.3. У нас это локальная учетная запись с именем “USR1CV8”. Следующие 2 экрана можно пропустить (Далее, Далее, Готово) или сделать следующий пункт на втором из них. Мы пропускаем.
  6. В ветке только что созданного приложения открываем узел «Роли» и в нём роль «CreatorOwner». Правый клик по пункту «Пользователи», Создать -> Пользователь. Здесь выбираем учетку, под которой запускается сервер 1С v 8.3. У нас это локальная учетная запись с именем “USR1CV8”.
  7. В ветке созданного приложения (“V8_ComConnector”) переходим на узел «Компоненты». Правый клик, Создать -> Компонент. Далее.
  8. Выбираем «Установка новых компонентов», и в появившемся окне выбираем нужную DLL-ку (C:\Program Files (x86)\1cv81\bin\comcntr.dll). Завершаем создание компонента.
  9. Открываем свойства только что созданного компонента (V81.COMConnector.1), переходим на вкладку «Безопасность», в списке «Явно установленные для выделенных объектов роли» устанавливаем флажок напротив роли “CreatorOwner”.

Все косяка 2147221164 должно уже не быть. Если соединение с базой 8.1 устанавливается из версии 8.2, то нужно в раздел “V8_ComConnector -> Роли -> CreatorOwner -> Пользователи” добавить и пользователя, от имени которого запускается сервер 1С 8.2 (у нас это “USR1CV82”). Как видите, порядок действий не такой сложный и долгий и решает ошибку 2147221164, буквально минут за 15.

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

  1. Евген

    Спасибо мне помогло, добавил себе в закладки

  2. Антон

    Тоже встречал данную заразу, лечил так же

  3. Дмитрий

    спасибо

  4. Иван Семин автор

    Рад, что помог.

  5. Сергей

    спасибо!!!

  6. Вячеслав

    Спасибо, помогло!

  7. Иван Семин автор

    Иначе и не могло быть!

  8. Михаил

    Добрый день !
    Почему то после создании нового компонента ничего не происходит — компонент отсутствует, после создания и в процессе , никаких ошибок не возникает .
    Как быть , что делать ?
    Спасибо .

  9. Алексей

    Огромное спасибо! Помогло! Добавил в закладки.

  10. Иван Семин автор

    Рад, что смог вам помочь.

  11. БРО

    Автор молодец дай бог тебе здоровья! СПАСИБО! Помогло)

  12. Ходакова Светлана

    Спасибо!

  13. Андрей

    О, спасибо за пошаговую инструкцию. Здоровья и удачи!

  14. Роман

    да, спасибо

  15. esqado

    Спасибо! Спасли моё время!

  16. Андрей

    Спасибо!

  17. Василий

    Автору респект!
    Спасибо!!!

  18. Сергей

    Спасибо!!!

  19. Юрий

    Отличная статья,большое спасибо!

  20. Илья

    Спасибо!

  21. Валентина

    спасибо

  22. Сергей

    У нас базы файловые, ошибка такая же. Как действовать в таком случае?

  23. Иваныч

    респект

  24. Сергей

    Спасибо за статью!Всё заработало!Очень помог!

  25. Иван Семин автор

    Очень рад, что смог вам быть полезным!

  26. Александр

    Благодарю! оказалось есть нюанс который в других местах не описан !