Содержание:
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
Когда ты начинающий специалист 1С, то иногда приходится чувствовать себя шаманом с бубном, так как не знаешь причин ошибки и как её исправить тоже.
Сегодня мы разберем одну из ошибок, которые появляются при работе с базой, а именно ошибку при вызове конструктора (COM-объект 1С).
Ситуацию такую, мы можем наблюдать при загрузке с Excel при использовании (COM-объекта 1С), при обмене между базами. Ситуаций, когда возникает данное сообщение с возникшей проблемой довольно много при работе с программой.
Как правило, данная ошибка возникает из-за того, что при установке платформы1С не произошла автоматическая регистрация 64-х разрядной компоненты, которая отвечает за использование COM-соединения 1С 8.3. А почему это произошло, спросите? Все очень просто и в то же время сложно, если не знаешь, в чем все ядро проблемы. А причина в том, что те, у кого выдаются такие ошибки, используют 32(86) – разрядную операционную систему и ставят вместо платформы необходимой разрядности их системы, платформу 1С предназначенную для совсем другой системы.
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
Исправить данную ошибку, довольно легко. Для этого необходимо всего лишь зарегистрировать библиотеку dll в реестре при помощи командной строки или программы PowerShell, в зависимости от того, что любите использовать, и команды regsvr32.
Для того чтобы выполнить команду, достаточно будет в строке написать такой текст команды «regsvr32 "C:\Program Files\1cv8\8.3.ХХ.ХХХХ\bin\comcntr.dll"». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.
Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.
Администратор: Командная строка
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
Также есть некоторые особенности команды, которая регистрирует компоненты.
На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):
· /u - параметр, отменяет регистрацию
· /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.
· /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);
· /s – возможность отключить все сообщения при регистрации;
Существует, также, один немаловажный момент, что в зависимости от версии командной строки, иногда приходится прописывать путь к самой утилите.
Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.
Таких программ достаточно много и писать, какое-то одно название смысла нет.
Для того чтобы быстро и качественно решать такие проблемы, необходимо изучать разнообразные статьи, для повышения уровня знаний и квалификации.
Специалист компании «Кодерлайн»
Олег Мороз