Ошибка при вызове конструктора COMОбъект
-

Ошибка при вызове конструктора COMОбъект

0
24451
03.02.2023 Лев Туренко

Содержание:

1.     Что такое COM и COM объект 1С

 

         COM – это объектная модель данных, выстроенная на Майкрософт компоненте, которая является независимой от платформы и распределённой объектной системой. Данная объектная модель служит для создания компонентов в двоичном программном обеспечении, при условии взаимодействия компонентов.


         Главным, единым, условием языка программирования, который сможет обеспечить объектную модель COM сервера 1С, является возможность писать структуры указателей и ними вызывать различные функции.


         Рассмотрим, что такое COM объект 1С – это некий объект, доступ к данным которого можно получить только при помощи функций, которые связаны. Набор из таких функций называют интерфейсом платформы 1С, а функции внутри наборов называются методами.


         Помимо этого, в модели COM сервера 1С необходимо, чтобы для получения доступа к интерфейсным методам нужно было обращаться к указателям на интерфейсы платформы 1С.   


2.     Ошибка вызова конструктора COMОбъекта в 1С


         Ошибка возникает в некоторых случаях, когда бывает, что во время установки системы 1С не регистрируется файл с названием «comcntr.dll», из-за чего работать с COM соединением сервера 1С нельзя ни при каких условиях.


         В этом случае, при решении ошибки, важно учитывать нюансы при работе с операционной системой Windows (при этом, версия Windows должна быть выше XP, т.е. будем рассматривать выход для новых версий) и с администрированием системы 1С.   


3.     Устранение ошибки при вызове конструктора COMОбъект


Ошибка при вызове конструктора COMОбъект в 1С имеет следующее отображение: «2147221164 (0х80040154): Класс не зарегистрирован» либо «Ошибка при вызове конструктора COMОбъект: Недопустимая строка с указанием класса 1С»), вид ошибки представлен на скриншоте ниже:




Выполняем такие действия:


·        Для начала, переходим в режим администратора и запускаем командную строку. Важно обратить внимание, что в командной строке должно быть написано: «C:\windows\system32» (либо 64 в конце, если это 64-х битная версия операционной системы). Получаем, что корректный путь для корневой строки должен выглядеть таким образом:




·        Следующий шаг – это написать команду «regsvr32», она будет выглядеть так: «C:\Program Files\1cv8\8.3.ХХ.ХХХХ\bin\comcntr.dll». Стоит отметить, что нужно прописать свой точный номер релиза платформы, а путь к самой библиотеке нужно брать в кавычки, конечный итог продемонстрирован ниже:




После этих действий, ошибка полностью устранена. В скриншотах-примерах была показана версия платформы 1С под номером «8.3.11.2867 х64».


Специалист компании "Кодерлайн"

Лев Туренко

Обсудить статью в Telegram Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Услуги программиста 1С
Получите специалиста
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.