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

Обновлено 13.02.2016

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

Ошибка 2147221164 0x80040154

Всем привет, сегодня рассмотрим, вопрос из за чего происходит ошибка 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.

Автор - Сёмин Иван

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

  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. Иван Семин:

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *