Устранение ошибки при подключении к базе данных 1С через COM-соединение













Случается, что при попытке подключения к информационной базе через com-соединение возникает ошибка при вызове конструктора (COMОбъект): «Класс не зарегистрирован» или «Недопустимая строка с указанием класса».
Ошибка при подключении к информационной базе
Данная ошибка означает, что класс V82.COMConnector не зарегистрирован в системе. Для устранения ошибки необходимо зарегистрировать указанный компонент.
 
Порядок регистрации компонента V82.COMConnector.
 
1. Заходим в Панель управления → Администрирование → Службы компонентов.
 
Службы компонентов
 
2. Переходим к ветке Компьютеры → Мой компьютер → Приложения COM+.
 
Приложения COM+
 
3. В контекстном меню выбираем Создать → Приложение. Откроется Мастер установки приложений COM+.
 
Мастер установки приложений COM+
 
4. Нажимаем «Далее».
5. Выбираем «Создать новое приложение».
 
Установка или создание нового приложения
 
6. Вводим имя «V82COMConnector». Устанавливаем переключатель «Серверное приложение». Нажимаем «Далее».
 
Создание нового приложения
 
7. На следующем шаге устанавливаем «Текущий пользователь». Нажимаем «Далее».
 
Удостоверение приложения
 
8. Нажимаем «Готово».
9. В появившейся ветке V82COMConnector переходим к подветке Компоненты.
 
V82COMConnector. Компоненты
 
10. В контекстном меню выбираем Создать → Компонент. Откроется Мастер установки компонентов COM+.
 
Мастер установки компонентов COM+
 
11. Нажимаем «Далее».
12. Выбираем «Установка новых компонентов».
 
Импорт или установка компонента
 
13. Выбираем файл <каталог 1С>incomcntr.dll.
 
Выбор файла comcntr.dll
 
14. Нажимаем «Далее» → «Готово».
15. Переходим к ветке V82COMConnector.
 
V82COMConnector
 
16. В контекстном меню выбираем «Свойства». В открывшемся окне переходим на вкладку «Безопасность».
17. Снимаем галку «Принудительная проверка доступа для приложений». Ставим галку «Применить политику программных ограничений». Устанавливаем Уровень ограничений — «Неограниченный».
 
 V82COMConnector
 
18. Нажимаем «ОК».
 
Класс V82.COMConnector зарегистрирован и может использоваться для подключения к информационным базам.

11 Comments

  1. rusmil

    А я обычно делаю так: запускаем cmd под администратором и выполняем команду regsvr32 /i «C:Program Files (x86)1cv88.3.10.2667incomcntr.dll»

    Конечно при каждом обновлении 1С платформы нужно указывать правильную версию платформы, в приведенном мною примере это 8.3.10.2667.

    Reply
  2. vladismi

    Запомним. Спасибо.

    Reply
  3. Famza

    (1), у меня батник написан — только циферки версии меняй )))

    Reply
  4. script

    Такой чисто админский подход.

    У меня проще.

    1. Идем в каталог с установленной версией 1С.

    2. Находим нужный нам файл comcntr.dll.

    3. Нажимаем на нем правой кнопкой мыши

    4. Появляется контекстное меню — выбираем отправить ярлык на рабочий стол.

    5. Находим ярлык.

    6. Нажимаем на нем правой кнопкой мыши- выбираем свойства

    7. В новом окне в поле «Объект» дописываем строку перед основным текстом, т.е. в начало текста

    regsvr32.exe пробел.

    8. Нажимаем «ОК».

    9. Запускаем ярлык от имени Админа.

    10. Получаем окно об успешной регистрации.

    Reply
  5. kcvmir

    (1) командой не всегда срабатывает

    Reply
  6. Darklight

    (4) А вот у меня уже лет 5 такой подход (через regsvr32.exe) не работает, причём в разных компаниях и под админ. правами (когда установлено несколько версий COM-компонент 1С8) — видать что-то в политики безопасности намутили админы (а дома давно так не пробовал). Для смены версии COM спасает только подмена записи в реестре через reg файл. Но для решения указанной в теме проблемы проходится делать как указано у автора статьи. К счастью — очень редко такое бывает.

    Reply
  7. BigB

    Всегда регистрировал cmd файлом с вот таким содержанием

    regsvr32 /n /i:user comcntr.dll
    Reply
  8. BigBoss

    Как же эта ошибка выбешивала ,когда пытался подключиться по Кому)

    Reply
  9. SanchoD

    (1) Тоже, как правило, так делаю. Но тут появилась проблема несовпадения версии клиента и сервера и убился с такой регистрацией — ничего не выходит. Удалил и установил заново новый релиз платформы. Зарегил dll-ку. Ничего не помогло. Коннектор остался от предыдущего релиза. Только когда снес все версии платформы и установил последнюю — заработало.

    Reply
  10. suepifanov

    еще в БСП есть функция регистрации — ОбщегоНазначенияКлиент.ЗарегистрироватьCOMСоединитель();

    Reply
  11. FSlon

    Обсуждалось уже: https://infostart.ru/public/197627/

    Reply

Leave a Comment

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