Но если вы получаете ошибку: Ошибка при вызове конструктора (COMObject): -2147221164(0x80040154): Класс не зарегистрирован, это означает, что при установке платформы компонента comcntr.dll не смогла зарегистрироваться автоматически.
Решается данная проблема очень просто: заходим на сервер 1С, запускаем командную строку от имени администратора и прописываем следующую команду:
C:\Windows\SysWOW64\regsvr32 «c:\Program Files(х86)\1cv8\8.3…\bin\comcntr.dll»
где 8.3… заменяем на корректный путь, в зависимости от вашей версии платформы.
Если после данной манипуляции ошибка не ушла, то пробуем сначала удалить эту компоненту с сервера, а затем установить её заново:
Удаление:
C:\Windows\SysWOW64\regsvr32 /u «c:\Program Files\1cv8\8.3…\bin\comcntr.dll»
Установка:
C:\Windows\SysWOW64\regsvr32 «c:\Program Files\1cv8\8.3…\bin\comcntr.dll»
Содержание:
1.Ошибка «Класс не зарегистрирован» как результат несоответствия версий платформы на сервере и на клиенте
2.Варианты решения проблемы «Класс не зарегистрирован»
1. Ошибка «Класс не зарегистрирован» как результат несоответствия версий платформы на сервере и на клиенте
Здравствуйте, коллеги! Если Вы читаете это, значит, вероятнее всего, Вы столкнулись с ошибкой «Класс не зарегистрирован» при работе с программами 1С:Предприятие 8. В данной статье я опишу несколько вариантов решения данной проблемы, один из которых точно поможет именно в Вашей ситуации.
Ошибка «Класс не зарегистрирован»
Первым делом рекомендую сверить версии платформ 1С 8.3 на сервере и на клиенте. Они должны быть абсолютно одинаковы. Если данная проверка была осуществлена, и вы все равно продолжаете получать сообщение с ошибкой программы «Класс не зарегистрирован», то самое время переходить к более решительным действиям.
2. Варианты решения проблемы «Класс не зарегистрирован»
В конфигурации 1С Предприятие 8.3 нам будет необходимо зарегистрировать файл comcntr.dll в системе – зачастую при получении ошибки «Класс не зарегистрирован» ситуация оказывается такова, что при установке платформы 1С на компьютере попросту не была осуществлена регистрация этого файла, что в свою очередь приводит к невозможности работы через COM-соединение.
Запустите командную строку от имени Администратора в 1С:Предприятие. Если Вы видите, что в командной строке прописан путь, отличающийся от «c:\windows\system32», то Вам нужно выполнить команду «cd c:\windows\system32». Данное замечание корректно для 32-х разрядных систем. Если же Вы работаете с 64-х разрядной системой, Вам необходимо выполнить команду «cd \windows\syswow64».
Исправление ошибки класс не зарегистрирован с помощью командной строки в 64-х разрядной системе
Следующим действием будет выполнение команды regsvr32 dll «C:\Program Files\1cv8\8.3.ХХ.ХХХХ\bin\comcntr.dll». Обратите внимание, что мы берем в кавычки путь к библиотеке comcntr.dll, так как в этом пути имеются знаки пробела. И также обратите внимание, что необходимо заменить 8.3.ХХ.ХХХХ на номер версии платформы 1С 8.3, которая установлена у Вас.
Команда regsvr32 dll
По итогу выполнения команды Вы должны получить системное сообщение, радостно сообщающее вам о том, что регистрация библиотеки была успешно выполнена на базе 1С Предприятие 8.
Описанный способ учитывает особенности работы в операционной системе Windows после версии XP, а также учитывает тонкости регистрации под 64-х разрядной системой.
Как видите, для устранения ошибки «Класс не зарегистрирован» в конфигурации 1С Предприятие 8 не потребовалось никаких сложных действий и, вполне возможно, описанное здесь покажется кому-то очевидным. Однако данная статья писалась с расчетом на тех людей, кто не обладает глубокими познаниями в тонкостях администрирования.
Надеюсь, мой материал помог Вам самостоятельно исправить ошибку «Класс не зарегистрирован». Однако замечу, что не всегда все так гладко, как хотелось бы, ведь программы 1С – это и технически, и методологически сложные программы. Так что если у Вас возникает какой-либо другой вопрос о нюансах работы с 1С, Вы всегда можете обратиться за помощью к нашим специалистам. Мы с радостью поможем решить Вашу проблему!
Специалист компании «Кодерлайн»
Алексей Дорофеев
Если при синхронизации баз 1С (например, обмен между УТ и БП, ЗУП или БП) возникла ошибка
Не удалось подключится к другой программе: -2147221164(0x80040154): Класс не зарегистрирован
возможно у вас не зарегистрирован COM-объект. Если у вас 64-битный сервер, а клиент 32-битный, выполните следующие действия:
- Откройте консоль Панель управления -> Администрирование -> Службы компонентов, далее там ищем Службы компонентов -> Компьютеры -> Мой компьютер. Правый клик по пункту Приложения COM+, Создать -> Приложение.
- В окне Установка или создание нового приложения выбираем Создать новое приложение. Вводим понятное имя для нового приложения, например, 1С, способ активации — Серверное приложение.
- В качестве учетной записи для запуска приложения выбираем Указанный пользователь и через кнопку Обзор находим учетку, под которой запускается сервер 1С. По-умолчанию это USR1CV8. После этого Далее, Далее, Готово.
- В ветке только что созданного приложения открываем узел Роли и в нём роль CreatorOwner. Правый клик по пункту Пользователи, Создать -> Пользователь. Здесь выбираем учетку, под которой запускается сервер 1С (USR1CV8).
- В ветке созданного приложения 1С переходим на узел Компоненты. Правый клик, Создать -> Компонент. Далее.
- Выбираем Установка новых компонентов, и в появившемся окне выбираем нужную DLL-ку (C :\ Program Files (x86)\1cv8\bin\comcntr.dll). Завершаем создание компонента.
- Открываем свойства только что созданного компонента (V81.COMConnector.1), переходим на вкладку Безопасность, в списке Явно установленные для выделенных объектов роли устанавливаем флажок напротив роли CreatorOwner.
Ошибки: «Не удалось подключиться к другой программе: Класс не зарегистрирован» и «Процесс сервера не может быть запущен, так как указана неправильная идентификация» при синхронизации, выгрузках и внешних подключениях
Данное сообщение часто можно встретить при анализе журнала регистрации после неудавшейся синхронизации, когда настроено прямое подключение к программе.
1. -2147221164(0x80040154): Класс не зарегистрирован.
Данное сообщение говорит о том, что не зарегистрирована COM-компонента.
Для ее регистрации необходимо запустить командную строку с правами администратора и выполнить regsvr32 [ПутьДоКомпоненты].
После выполнения команды должно появиться сообщение об успешном выполнении регистрации библиотеки.
Однако, даже регистрация компоненты через командую строку “привычным” способом помогает не всегда. В таком случае, необходимо вручную создать COM-приложение.
Новому COM-приложению нужно ввести имя “V83COMConnector” и указать, что приложение является серверным.
Также необходимо обратить внимание, что учетной записью для работы приложения НЕ может быть встроенная учетная запись.
Чтобы избежать нежелательных ошибок, лучше выбрать “указанный пользователь” и указать там администратора.
После успешного создания V83COMConnector появится новое приложение.
Далее в созданном приложении необходимо установить новый компонент через контекстное меню.
Выбрать файл comcntr.dll в каталоге установленной платформы.
В следующем окне можно убедиться, что регистрация через командную строку была ложно-успешной, так как признак “Установлено” компоненты равен “Нет”.
После успешной установки, необходимо перейти к ветке V83COMConnector. В контекстном меню выбрать «Свойства». На вкладке “Безопасность” необходимо снять галку “Принудительная проверка доступа для приложений”. Установить галку «Применить политику программных ограничений» и выбрать уровень ограничений “Неограниченный”. Сохранить параметры.
На этом ручная установка приложения завершена.
2. Процесс сервера не может быть запущен, так как указана неправильная идентификация
Причинами этой ошибки могут быть:
- при ручной регистрации COM-компоненты либо была указана системная учетная запись, либо пользователь не имеющей прав администратора;
- служба сервера 1С запущена с локальной учетной записью.
Для изменения пользователя, от имени которого работает служба сервера 1С, необходимо открыть свойства службы, перейти на вкладку “Вход в систему” и указать пользователя с правами администратора.
После изменения учетной записи потребуется перезапуск службы.
Нужна помощь с 1С?
Мы можем взять на себя ваш бухгалтерский учет. Вам не нужно будет думать о расчете налогов и сдаче отчетности. Мы будем вести финансовую ответственность за ошибки. Мы — команда профессионалов, а не один бухгалтер, мы не заболеем, не пропадем и не уйдем внезапно в отпуск. Сосредоточьтесь на управлении. А учет и отчетность мы возьмем на себя. Чтобы получить бесплатную консультацию по автоматизации своего бизнеса Вы можете пообщаться с нашими специалистами в офисе компании или позвонив по телефону: 8-800-707-01-02.
Сопровождение 1С
Наш специалист
Специалист отдела сопровождения
Специалист-консультант по зарплатным решениям и 1С:Бухгалтерии
Чем мы можем быть вам полезны?
Иногда при установке 1С клиента в клиент-серверной версии 1С версии 8.3 и выше, администратор может столкнуться с ошибкой “Ошибка 2147221164 0x80040154 класс не зарегистрирован”. Данная ошибка вызвана отсутствием регистрации класса COMConnector. Для исправления данной ошибки необходимо выполнить следующие шаги:
- Запускаем командную строку cmd с правами администратора и регистрируем через regsvr32 библиотеку comcntr.dll на сервере 1С Предприятия:
C:\regsvr32 «C:\Program Files (x86)\1cv8\XXXXX\bin\comcntr.dll» |
где ХХХХХ – это номер вашего релиза 1С. При успешной регистрации библиотеки вы получите соответствующее информационное уведомление.
Проверяем пропала ли эта ошибка в 1С, если нет, то двигаемся дальше.
Запускаем консоль «Службы компонентов» из раздела «Администрирование» в Панели управления.
- Переходим «Службы компонентов» – «Компьютеры» – «Мой компьютер».
- Нажимаем правой кнопкой мыши на «Приложения COM+», и выбираем «Создать» — «Приложение», и далее «Создать новое приложение».
- Введите имя ComConnector8, способ активации ставим «Серверное приложение».
далее:
- Учётной записью для активации приложения поставьте «Указанный пользователь». Нажмите на «Обзор», найдите учётную запись, из-под которой запускается наш сервер 1С версия 8.3.ХХХХХ – обычно это пользователь «USER1CV8».
- В ветке созданного приложения кликните на узел «Роли», а в нём – на «CreatorOwner».
- Далее наводим курсор на пункт «Пользователи», выбираем «Создать» – «Пользователь» и выбираем учётную запись, из-под которой стартует сервер 1С – обычно это пользователь «USER1CV8».
- В ветке созданного нами приложения «ComConnector8» переходим на узел «Компоненты» и жмем правую клавишу мыши.
- Далее «Создать» и «Компонент».
Выберем опцию «Установка новых компонентов», и в открывшемся окне указываем путь к dll-файлу comcntr.dll: C:\Program Files (x86)\1cv81\XXXXX\bin\comcntr.dll, где ХХХХХ – версия вашего релиза.
Далее необходимо открыть свойства созданного компонента и выбрать вкладку «Безопасность», в ней увидим Параметр с названием «Явно установленные для выделения объектов роли», и поставим флажок напротив «CreatorOwner».
Вот и всё.
Просмотров: 7 495