Vba run time error 2147221164 80040154 класс не зарегистрирован

This code has been running for several years.  This morning it did not.  The VBA code is as follows:
  • Remove From My Forums
  • Question

  • This code has been running for several years.  This morning it did not.  The VBA code is as follows:

    Private Sub Form_Open(Cancel As Integer)
      Set rstblBankComposite = New ADODB.Recordset
      With rstblBankComposite
        .Open _
          «SELECT [As-Of Date] AS MaxDate » & _
          «FROM tblBankComposite » & _
          «ORDER BY [As-Of Date] DESC», _
          CurrentProject.Connection

    The error number and message is: Run-time error ‘-2147221164 (80040154):’  ‘Class not registered’

    When I place the cursor on «CurrentProject.Connection», I get «CurrentProject.Connection = <Class not registered>»

    My Windows environment is Windows 7 Professional SP 1 32 Bit, Version 6.1.7601 Service Pac 1 Build 7601.

    My Access environment is Access 2013 (15.0.4420.1017) MSO (15.0.4535.1002) 32 bit.

    My application code is in one Acess file and the data is linked in a separate Access file.  From the application code file I can expand the Navigation bar, select Tables, click on the file and view the table tblBankComposite.  I can run a
    report in the application file and it pulls data from the data Access file.

    Any suggestions?

    • Moved by

      Wednesday, October 23, 2013 5:10 AM
      Access related question

Answers

  • This error code refers to fields in the MSysObjects table usually and can occur for many reasons. Open a query based on the table and enter the error code -2147221164 in the criteria box for the ‘Id’ field or the ‘Flags’ field . It
    could be a corrupted connection string or form or something else. You cannot delete or edit entries in this table , but at least you know where to start.

    • Marked as answer by
      Tom Stripling
      Wednesday, October 23, 2013 7:33 PM

Содержание

  1. Vba run time error 2147221164 80040154 класс не зарегистрирован
  2. Исправляем 2147221164
  3. 2147221164 (0x80040154): Класс не зарегистрирован — что делать?
  4. Когда появляется ошибка 2147221164?
  5. Справляемся с проблемой
  6. Регистрируем библиотеку comcntr.dll
  7. Создаем новое приложение СОМ+
  8. Vba run time error 2147221164 80040154 класс не зарегистрирован
  9. Лучший отвечающий
  10. Вопрос
  11. Vba run time error 2147221164 80040154 класс не зарегистрирован
  12. Исправляем 2147221164
  13. 2147221164 (0x80040154): Класс не зарегистрирован — что делать?
  14. Когда появляется ошибка 2147221164?
  15. Справляемся с проблемой
  16. Регистрируем библиотеку comcntr.dll
  17. Создаем новое приложение СОМ+

Vba run time error 2147221164 80040154 класс не зарегистрирован

Ошибка 2147221164 0x80040154

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

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

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

Ошибка 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)1cv81bincomcntr.dll). Завершаем создание компонента.
  9. Открываем свойства только что созданного компонента (V81.COMConnector.1), переходим на вкладку «Безопасность», в списке «Явно установленные для выделенных объектов роли» устанавливаем флажок напротив роли “CreatorOwner”.

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

Источник

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

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

Когда появляется ошибка 2147221164?

Рассматриваемая ошибка появляется из-за конфликта версий 1С, которые в данный момент устанавливают между собой соединение. Разберем подробнее. Информационные БД 1С производят обмен данных при помощи СОМ-соединения. И, если, например, платформа 1С:Предприятие конфигурации 8.3 пытается установить связь с 1С версии 8.1, то на этом этапе при попытке подключения к СОМ-серверу и выскакивает данная ошибка.

Для начала определим, что у сервера 1С есть несколько версий:

  1. 32-битная 8.1 (х86).
  2. 64-битные 8.2 и 8.3 (х64).

Неполадки появляются на самом сервере с БД. Корень проблемы в том, что версии 1С архитектуры х64 не могут напрямую обратиться к 32-битной библиотеке comcntr.dll. В этом случае соединение происходит при помощи приложений СОМ+, способных взаимодействовать с библиотеками х86.

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

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

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

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

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

Если библиотека зарегистрирована, но проблема остается, то кликаем ПКМ по кнопке «Пуск» (для ОС Windows 10) и вызываем «Панель управления». Затем входим в раздел «Система и безопасность», после чего переходим в «Администрирование». Появляется окно, в котором мы ищем строку «Службы компонентов» и открываем ее двойным щелчком ЛКМ. В новой консоли два раза кликаем ЛКМ по папке «Компьютер» и затем «Мой компьютер». Перед нами появляется список папок. ПКМ нажимаем на «Приложения СОМ+» и выбираем «Создать» → «Приложение».

Далее действуем следующим образом.

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

Введите имя нового приложения 1CV8_ComConnect
Теперь проводим процедуру удостоверения. В поле «Указанный пользователь» при помощи функции «Обзор» ищем учетную запись, под которым будем запускать сервер 1С версии 8.3. (Для примера обозначим ее как User1CV83).

  • Пропускаем процедуры, предлагаемые в следующих окнах, и нажимаем кнопку «Готово». Мастер закрывается.
  • Возвращаемся в окно «Службы компонентов» и раскрываем ветку нашего только что созданного приложения. Разворачиваем узел «Роли», в которой кликаем на пункт CreatorOwner. ПКМ щелкаем по строке «Пользователи» и создаем нового пользователя. Снова выбираем ту учетную запись, под которой будет запускаться сервер 1С (это та самая User1CV83, о которой шла речь выше).
  • Переходим в ветку приложения 1CV8_ComConnect и кликаем ПКМ на узел «Компоненты». Создаем новый компонент.
  • В открывшемся Мастере делаем выбор пункта «Установка новых компонентов» и, когда появляется следующее окно, определяем нужную нам библиотеку dll (она находится по пути C:Program Files (x86)1cv81bin). Завершаем работу Мастера.
  • У нас появился компонент 1CV81.ComConnect.1. Кликаем по нему ПКМ и открываем пункт «Свойства». Во вкладке «Безопасность» находим перечень «Явно установленные для выделенных объектов роли» и ставим флажок напротив CreatorOwner.
  • Мы рассмотрели соединение с базой из программы 1С:Предприятие версии 8.3. Если планируется устанавливать коннект с БД 8.1 из версии 1С 8.2, то нужно добавить нового пользователя. Переходим по пути 1CV8_ComConnect → Роли → CreatorOwner → Пользователи и добавляем новую учетную запись User1CV82, под которой будет производиться запуск сервера 1С версии 8.2.

    Источник

    Vba run time error 2147221164 80040154 класс не зарегистрирован

    Лучший отвечающий

    Вопрос

    This code has been running for several years. This morning it did not. The VBA code is as follows:

    Private Sub Form_Open(Cancel As Integer)
    Set rstblBankComposite = New ADODB.Recordset
    With rstblBankComposite
    .Open _
    «SELECT [As-Of Date] AS MaxDate » & _
    «FROM tblBankComposite » & _
    «ORDER BY [As-Of Date] DESC», _
    CurrentProject.Connection

    The error number and message is: Run-time error ‘-2147221164 (80040154):’ ‘Class not registered’

    When I place the cursor on «CurrentProject.Connection», I get «CurrentProject.Connection = «

    My Windows environment is Windows 7 Professional SP 1 32 Bit, Version 6.1.7601 Service Pac 1 Build 7601.

    My Access environment is Access 2013 (15.0.4420.1017) MSO (15.0.4535.1002) 32 bit.

    My application code is in one Acess file and the data is linked in a separate Access file. From the application code file I can expand the Navigation bar, select Tables, click on the file and view the table tblBankComposite. I can run a report in the application file and it pulls data from the data Access file.

    Источник

    Vba run time error 2147221164 80040154 класс не зарегистрирован

    Ошибка 2147221164 0x80040154

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

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

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

    Ошибка 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)1cv81bincomcntr.dll). Завершаем создание компонента.
    9. Открываем свойства только что созданного компонента (V81.COMConnector.1), переходим на вкладку «Безопасность», в списке «Явно установленные для выделенных объектов роли» устанавливаем флажок напротив роли “CreatorOwner”.

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

    Источник

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

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

    Когда появляется ошибка 2147221164?

    Рассматриваемая ошибка появляется из-за конфликта версий 1С, которые в данный момент устанавливают между собой соединение. Разберем подробнее. Информационные БД 1С производят обмен данных при помощи СОМ-соединения. И, если, например, платформа 1С:Предприятие конфигурации 8.3 пытается установить связь с 1С версии 8.1, то на этом этапе при попытке подключения к СОМ-серверу и выскакивает данная ошибка.

    Для начала определим, что у сервера 1С есть несколько версий:

    1. 32-битная 8.1 (х86).
    2. 64-битные 8.2 и 8.3 (х64).

    Неполадки появляются на самом сервере с БД. Корень проблемы в том, что версии 1С архитектуры х64 не могут напрямую обратиться к 32-битной библиотеке comcntr.dll. В этом случае соединение происходит при помощи приложений СОМ+, способных взаимодействовать с библиотеками х86.

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

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

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

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

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

    Если библиотека зарегистрирована, но проблема остается, то кликаем ПКМ по кнопке «Пуск» (для ОС Windows 10) и вызываем «Панель управления». Затем входим в раздел «Система и безопасность», после чего переходим в «Администрирование». Появляется окно, в котором мы ищем строку «Службы компонентов» и открываем ее двойным щелчком ЛКМ. В новой консоли два раза кликаем ЛКМ по папке «Компьютер» и затем «Мой компьютер». Перед нами появляется список папок. ПКМ нажимаем на «Приложения СОМ+» и выбираем «Создать» → «Приложение».

    Далее действуем следующим образом.

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

    Введите имя нового приложения 1CV8_ComConnect
    Теперь проводим процедуру удостоверения. В поле «Указанный пользователь» при помощи функции «Обзор» ищем учетную запись, под которым будем запускать сервер 1С версии 8.3. (Для примера обозначим ее как User1CV83).

  • Пропускаем процедуры, предлагаемые в следующих окнах, и нажимаем кнопку «Готово». Мастер закрывается.
  • Возвращаемся в окно «Службы компонентов» и раскрываем ветку нашего только что созданного приложения. Разворачиваем узел «Роли», в которой кликаем на пункт CreatorOwner. ПКМ щелкаем по строке «Пользователи» и создаем нового пользователя. Снова выбираем ту учетную запись, под которой будет запускаться сервер 1С (это та самая User1CV83, о которой шла речь выше).
  • Переходим в ветку приложения 1CV8_ComConnect и кликаем ПКМ на узел «Компоненты». Создаем новый компонент.
  • В открывшемся Мастере делаем выбор пункта «Установка новых компонентов» и, когда появляется следующее окно, определяем нужную нам библиотеку dll (она находится по пути C:Program Files (x86)1cv81bin). Завершаем работу Мастера.
  • У нас появился компонент 1CV81.ComConnect.1. Кликаем по нему ПКМ и открываем пункт «Свойства». Во вкладке «Безопасность» находим перечень «Явно установленные для выделенных объектов роли» и ставим флажок напротив CreatorOwner.
  • Мы рассмотрели соединение с базой из программы 1С:Предприятие версии 8.3. Если планируется устанавливать коннект с БД 8.1 из версии 1С 8.2, то нужно добавить нового пользователя. Переходим по пути 1CV8_ComConnect → Роли → CreatorOwner → Пользователи и добавляем новую учетную запись User1CV82, под которой будет производиться запуск сервера 1С версии 8.2.

    Источник

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

    Скриншот ошибки

    Содержание

    1. Когда появляется ошибка 2147221164?
    2. Справляемся с проблемой
    3. Регистрируем библиотеку comcntr.dll
    4. Создаем новое приложение СОМ+

    Когда появляется ошибка 2147221164?

    Рассматриваемая ошибка появляется из-за конфликта версий 1С, которые в данный момент устанавливают между собой соединение. Разберем подробнее. Информационные БД 1С производят обмен данных при помощи СОМ-соединения. И, если, например, платформа 1С:Предприятие конфигурации 8.3 пытается установить связь с 1С версии 8.1, то на этом этапе при попытке подключения к СОМ-серверу и выскакивает данная ошибка.

    Для начала определим, что у сервера 1С есть несколько версий:

    1. 32-битная 8.1 (х86).
    2. 64-битные 8.2 и 8.3 (х64).

    Неполадки появляются на самом сервере с БД. Корень проблемы в том, что версии 1С архитектуры х64 не могут напрямую обратиться к 32-битной библиотеке comcntr.dll. В этом случае соединение происходит при помощи приложений СОМ+, способных взаимодействовать с библиотеками х86.

    Читайте также: Неверный формат хранилища данных 1C 8.3 как исправить.

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

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

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

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

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

    Если библиотека зарегистрирована, но проблема остается, то кликаем ПКМ по кнопке «Пуск» (для ОС Windows 10) и вызываем «Панель управления». Затем входим в раздел «Система и безопасность», после чего переходим в «Администрирование». Появляется окно, в котором мы ищем строку «Службы компонентов» и открываем ее двойным щелчком ЛКМ. В новой консоли два раза кликаем ЛКМ по папке «Компьютер» и затем «Мой компьютер». Перед нами появляется список папок. ПКМ нажимаем на «Приложения СОМ+» и выбираем «Создать»«Приложение».

    Консоль

    Далее действуем следующим образом.

    1. В открывшемся Мастере нажимаем «Далее» и, когда в следующем окне нам предложат действие на выбор, кликаем «Создать новое приложение».
    2. В соответствующей строке присваиваем новому приложению имя, которое будет понятно не только нам, но и другим пользователям при дальнейшей работе, например 1CV8_ComConnect. Здесь же выбираем способ активации – «Серверное приложение». Окно мастера установки приложений Com+
      Введите имя нового приложения 1CV8_ComConnect
    3. Теперь проводим процедуру удостоверения. В поле «Указанный пользователь» при помощи функции «Обзор» ищем учетную запись, под которым будем запускать сервер 1С версии 8.3. (Для примера обозначим ее как User1CV83).Скрин мастера установки приложений Com+Окно выбора учетной записи
    4. Пропускаем процедуры, предлагаемые в следующих окнах, и нажимаем кнопку «Готово». Мастер закрывается.
    5. Возвращаемся в окно «Службы компонентов» и раскрываем ветку нашего только что созданного приложения. Разворачиваем узел «Роли», в которой кликаем на пункт CreatorOwner. ПКМ щелкаем по строке «Пользователи» и создаем нового пользователя. Снова выбираем ту учетную запись, под которой будет запускаться сервер 1С (это та самая User1CV83, о которой шла речь выше).
    6. Переходим в ветку приложения 1CV8_ComConnect и кликаем ПКМ на узел «Компоненты». Создаем новый компонент.
    7. В открывшемся Мастере делаем выбор пункта «Установка новых компонентов» и, когда появляется следующее окно, определяем нужную нам библиотеку dll (она находится по пути C:Program Files (x86)1cv81bin). Завершаем работу Мастера.
    8. У нас появился компонент 1CV81.ComConnect.1. Кликаем по нему ПКМ и открываем пункт «Свойства».  Во вкладке «Безопасность» находим перечень «Явно установленные для выделенных объектов роли» и ставим флажок напротив CreatorOwner.

    Может быть вам полезно: Обнаружено нарушение целостности системы в 1C что делать.

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

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

    Опубликовано 20 августа 2018 Обновлено 03 октября 2020

    Обновлено 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)1cv81bincomcntr.dll). Завершаем создание компонента.
    9. Открываем свойства только что созданного компонента (V81.COMConnector.1), переходим на вкладку «Безопасность», в списке «Явно установленные для выделенных объектов роли» устанавливаем флажок напротив роли “CreatorOwner”.

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

    Фев 13, 2016 20:19

    by Kazim Ali Alvi

    Kazim has always been fond of technology, be it scrolling through the settings on his iPhone, Android device, or Windows. And at times, unscrewing the device to take… read more


    Updated on December 5, 2022

    • Many users have reported encountering the Class not registered VBA error when running a macro in Excel.
    • This could be due to missing DLL files, corrupt system files, or issues with Microsoft Office itself.
    • To solve the error, repair Microsoft Office, run the DISM and SFC scan, or try the two other fixes here.

    Fix Class not registered VBA error

    XINSTALL BY CLICKING THE DOWNLOAD FILE

    To fix various PC problems, we recommend Restoro PC Repair Tool:
    This software will repair common computer errors, protect you from file loss, malware, hardware failure and optimize your PC for maximum performance. Fix PC issues and remove viruses now in 3 easy steps:

    1. Download Restoro PC Repair Tool that comes with Patented Technologies (patent available here).
    2. Click Start Scan to find Windows issues that could be causing PC problems.
    3. Click Repair All to fix issues affecting your computer’s security and performance
    • Restoro has been downloaded by 0 readers this month.

    Though the Microsoft Office suite is one of the best products in the category, users often come across errors in it. One such is the Class not registered VBA error in Microsoft Excel.

    The error is usually encountered when trying to run a macro in Excel, though that’s not always the case. When this happens, you are unable to perform the desired function.

    However, the Class not registered VBA error is not as intricate as it appears, and we have listed the best fixes for it in the following section.

    How do I fix the Class not registered VBA error?

    In this article

    • How do I fix the Class not registered VBA error?
    • 1. Repair Microsoft Office
    • 2. Register critical DLL file
    • 3. Run DISM and SFC scan
    • 4. Update Microsoft Office

    1. Repair Microsoft Office

    1. Press Windows + R to launch the Run command, type appwiz.cpl in the text field, and either click on OK or hit Enter to launch the Programs and Features window.appwiz.cpl
    2. Locate the Microsoft Office entry, select it, and then click on Change.Change to fix class not registered vba
    3. Click Yes in the UAC (User Account Control) prompt that pops up.Click Yes
    4. Now, select the Online Repair option, and click on the Repair button to start the process.Online repair to fix class not registered vba

    The repair process is found to eliminate a lot of issues with Microsoft Office including the Class not registered VBA error. If this method doesn’t work, head to the next one.

    2. Register critical DLL file

    1. Press Windows + S to launch the Search menu, enter Windows Terminal in the text field at the top, right-click on the relevant search result, and select Run as administrator from the context menu.Windows Terminal to fix class not registered vba
    2. Click Yes in the UAC prompt that appears.Yes
    3. Now, click on the downward-facing arrow, and select Command Prompt from the list of options. Alternatively, you can hit Ctrl + Shift + 2 to launch Command Prompt.Command Prompt to fix class not registered vba
    4. Type/paste the following command and hit Enter:cd C:WindowsSysWOW64Execute command
    5. Now, execute the following command to register the required DLL file:Regsvr32 fm20.dllregister dll file to fix class not registered vba

    Another quick way to register missing DLL files or replace the corrupt ones is to use Restoro, a reliable third-party tool. Apart from that, it will also look for the malware, eliminate it, and repair the damage caused. Besides, the tool will also help optimize the Registry.

    Some PC issues are hard to tackle, especially when it comes to corrupted repositories or missing Windows files. If you are having troubles fixing an error, your system may be partially broken.
    We recommend installing Restoro, a tool that will scan your machine and identify what the fault is.
    Click here to download and start repairing.

    ⇒ Get Restoro

    3. Run DISM and SFC scan

    1. Press Windows + R to launch the Run command, enter wt in the text field, press and hold the Ctrl + Shift key, and then click on OK or hit Enter to launch an elevated Windows Terminal.Windows Terminal
    2. Click Yes in the UAC prompt.Click Yes
    3. Click on the arrow at the top, and select Command Prompt from the dropdown menu. Command Promp to fix class not registered vba
    4. Now, paste the following three commands one at a time, and hit Enter after each to run the DISM tool:DISM.exe /Online /Cleanup-image /Scanhealth DISM.exe /Online /Cleanup-image /Restorehealth DISM.exe /online /cleanup-image /startcomponentcleanup
    5. Now, execute the following command to perform the SFC scan:sfc /scannowSFC scan to fix class not registered vba

    The SFC (System File Checker) scan and DISM (Deployment Image Servicing and Management) tool are two effective methods to fix a bunch of issues having to do with corrupt system files or problems with the Windows image.

    Read more about this topic

    • How to Resolve Microsoft Office Error Code 30204-44
    • Microsoft’s Office scan for outdated versions sparks privacy concern
    • Save as Window Keeps Popping Up: How to Get Rid of It
    • Microsoft Excel is Waiting for Another Application to Complete OLE Action

    4. Update Microsoft Office

    1. Launch any Microsoft Office app, and open a new blank document.
    2. Now, click on the File menu near the top-left corner.File menu to fix class not registered vba
    3. Select Account from the list of options on the left.Accounts
    4. Next, click on the Update Options button under Product Information.Update options
    5. Finally, select Update Now from the options in the flyout menu.Update now to fix class not registered vba
    6. Wait for the update to install, if there’s one available.

    If it’s a problem with the current version, try installing the latest version of Microsoft Office.

    These are all the ways you can fix the Class not registered VBA error when trying to run macro in Excel. In case none of the methods here help, upgrade to the latest iteration of MS Office available.

    Also, find out how to fix the VBA runtime error 1004.

    If you have any other queries or know a method that’s not listed here, please drop a comment in the section below.

    newsletter icon

    Newsletter

    by Kazim Ali Alvi

    Kazim has always been fond of technology, be it scrolling through the settings on his iPhone, Android device, or Windows. And at times, unscrewing the device to take… read more


    Updated on December 5, 2022

    • Many users have reported encountering the Class not registered VBA error when running a macro in Excel.
    • This could be due to missing DLL files, corrupt system files, or issues with Microsoft Office itself.
    • To solve the error, repair Microsoft Office, run the DISM and SFC scan, or try the two other fixes here.

    Fix Class not registered VBA error

    XINSTALL BY CLICKING THE DOWNLOAD FILE

    To fix various PC problems, we recommend Restoro PC Repair Tool:
    This software will repair common computer errors, protect you from file loss, malware, hardware failure and optimize your PC for maximum performance. Fix PC issues and remove viruses now in 3 easy steps:

    1. Download Restoro PC Repair Tool that comes with Patented Technologies (patent available here).
    2. Click Start Scan to find Windows issues that could be causing PC problems.
    3. Click Repair All to fix issues affecting your computer’s security and performance
    • Restoro has been downloaded by 0 readers this month.

    Though the Microsoft Office suite is one of the best products in the category, users often come across errors in it. One such is the Class not registered VBA error in Microsoft Excel.

    The error is usually encountered when trying to run a macro in Excel, though that’s not always the case. When this happens, you are unable to perform the desired function.

    However, the Class not registered VBA error is not as intricate as it appears, and we have listed the best fixes for it in the following section.

    How do I fix the Class not registered VBA error?

    In this article

    • How do I fix the Class not registered VBA error?
    • 1. Repair Microsoft Office
    • 2. Register critical DLL file
    • 3. Run DISM and SFC scan
    • 4. Update Microsoft Office

    1. Repair Microsoft Office

    1. Press Windows + R to launch the Run command, type appwiz.cpl in the text field, and either click on OK or hit Enter to launch the Programs and Features window.appwiz.cpl
    2. Locate the Microsoft Office entry, select it, and then click on Change.Change to fix class not registered vba
    3. Click Yes in the UAC (User Account Control) prompt that pops up.Click Yes
    4. Now, select the Online Repair option, and click on the Repair button to start the process.Online repair to fix class not registered vba

    The repair process is found to eliminate a lot of issues with Microsoft Office including the Class not registered VBA error. If this method doesn’t work, head to the next one.

    2. Register critical DLL file

    1. Press Windows + S to launch the Search menu, enter Windows Terminal in the text field at the top, right-click on the relevant search result, and select Run as administrator from the context menu.Windows Terminal to fix class not registered vba
    2. Click Yes in the UAC prompt that appears.Yes
    3. Now, click on the downward-facing arrow, and select Command Prompt from the list of options. Alternatively, you can hit Ctrl + Shift + 2 to launch Command Prompt.Command Prompt to fix class not registered vba
    4. Type/paste the following command and hit Enter:cd C:WindowsSysWOW64Execute command
    5. Now, execute the following command to register the required DLL file:Regsvr32 fm20.dllregister dll file to fix class not registered vba

    Another quick way to register missing DLL files or replace the corrupt ones is to use Restoro, a reliable third-party tool. Apart from that, it will also look for the malware, eliminate it, and repair the damage caused. Besides, the tool will also help optimize the Registry.

    Some PC issues are hard to tackle, especially when it comes to corrupted repositories or missing Windows files. If you are having troubles fixing an error, your system may be partially broken.
    We recommend installing Restoro, a tool that will scan your machine and identify what the fault is.
    Click here to download and start repairing.

    ⇒ Get Restoro

    3. Run DISM and SFC scan

    1. Press Windows + R to launch the Run command, enter wt in the text field, press and hold the Ctrl + Shift key, and then click on OK or hit Enter to launch an elevated Windows Terminal.Windows Terminal
    2. Click Yes in the UAC prompt.Click Yes
    3. Click on the arrow at the top, and select Command Prompt from the dropdown menu. Command Promp to fix class not registered vba
    4. Now, paste the following three commands one at a time, and hit Enter after each to run the DISM tool:DISM.exe /Online /Cleanup-image /Scanhealth DISM.exe /Online /Cleanup-image /Restorehealth DISM.exe /online /cleanup-image /startcomponentcleanup
    5. Now, execute the following command to perform the SFC scan:sfc /scannowSFC scan to fix class not registered vba

    The SFC (System File Checker) scan and DISM (Deployment Image Servicing and Management) tool are two effective methods to fix a bunch of issues having to do with corrupt system files or problems with the Windows image.

    Read more about this topic

    • How to Resolve Microsoft Office Error Code 30204-44
    • Microsoft’s Office scan for outdated versions sparks privacy concern
    • Save as Window Keeps Popping Up: How to Get Rid of It
    • Microsoft Excel is Waiting for Another Application to Complete OLE Action
    • Error 30016-22: How to Fix This Office Installation Bug

    4. Update Microsoft Office

    1. Launch any Microsoft Office app, and open a new blank document.
    2. Now, click on the File menu near the top-left corner.File menu to fix class not registered vba
    3. Select Account from the list of options on the left.Accounts
    4. Next, click on the Update Options button under Product Information.Update options
    5. Finally, select Update Now from the options in the flyout menu.Update now to fix class not registered vba
    6. Wait for the update to install, if there’s one available.

    If it’s a problem with the current version, try installing the latest version of Microsoft Office.

    These are all the ways you can fix the Class not registered VBA error when trying to run macro in Excel. In case none of the methods here help, upgrade to the latest iteration of MS Office available.

    Also, find out how to fix the VBA runtime error 1004.

    If you have any other queries or know a method that’s not listed here, please drop a comment in the section below.

    newsletter icon

    Newsletter

    Понравилась статья? Поделить с друзьями:
  • Vba open file error
  • Vba on error отменить
  • Vba on error stop
  • Vba on error resume next пример
  • Vba on error goto errhandler