Тест гилева ошибка при вызове конструктора сомобъект

Ошибка при запуске теста

Модератор: Дмитрий Юхтимовский

Ошибка при запуске теста

Здравствуйте.
У меня при запуске конфигурации теста однократно проскакивает ошибка:
{Обработка.TPC_1C_GILV.Форма.Форма.Форма(482)}: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Недопустимая строка с указанием класса
Во время запуска и работы теста ошибок нет. Платформа 8.3.13.1644 (х64) + SQL Server 2017 со всеми обновлениями. Ось Windows Server 2016 Standard. Платформа и сервер на одном компе, все свежеустановленное.

netraider
 
Сообщений: 16
Зарегистрирован: 04 фев 2019, 13:08


Re: Ошибка при запуске теста

Сообщение netraider » 04 фев 2019, 14:44

Проходит, но подозрительно мало баллов набирает. Сервер корпоративного класса, 4 процессора Intel(R) Xeon(R) Gold 6154 CPU @ 3.00GHz (по 18 ядер в каждом), 1,5 терабайта оперативки, SSD диски Intel(R) Optane(tm) SSD DC P4800X. Вся эта система набирает 38 баллов!!!! На сервере ничего кроме 1С и SQL нет. Просто подозрительно мало. Вот и подозреваю, что из за этой ошибки тест некорректно работает.

netraider
 
Сообщений: 16
Зарегистрирован: 04 фев 2019, 13:08

Re: Ошибка при запуске теста

Сообщение Гилёв Вячеслав » 04 фев 2019, 17:41

у нас хороший тест, проверенный 10 годами если хотите
ошибка не влияет
ищи проблему в сервере или среде

Гилёв Вячеслав
 
Сообщений: 2726
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка при запуске теста

Сообщение netraider » 05 фев 2019, 10:17

Да я не подвергаю сомнению ваш тест)
Кстати, сегодня запустил файловый вариант теста. И что интересно, в нем не появляется ошибка при запуске и набирает больше 70 баллов. Видимо, дело в SQL 2017

netraider
 
Сообщений: 16
Зарегистрирован: 04 фев 2019, 13:08

Re: Ошибка при запуске теста

Сообщение Гилёв Вячеслав » 05 фев 2019, 15:11

гадать последнее дело
там ошибка COM, не происходит подключение к ком-объекту соединения с сервером 1С для опроса параметров, на тест это не влияет, скуль не причем

Гилёв Вячеслав
 
Сообщений: 2726
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка при запуске теста

Сообщение goto » 08 июн 2020, 17:43

мне помогло это:

Код: выделить все
regsvr32 "C:\Program Files (x86)\1cv8\8.3.15.1747\bin\comcntr.dll"
goto
 
Сообщений: 1
Зарегистрирован: 08 июн 2020, 17:41


Вернуться в Нагрузочное тестирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Первая статья в новом 2021 году будет посвящена программе 1С. Это связанна с тем что данное ПО очень распространено. Так как альтернативы пока что нет. К типовым конфигурация претензий практически нет, в них не появляются ошибки, при обновлении, переносе и других манипуляциях. Что нельзя сказать о самопысных конфигурациях или измененных типовых. Как правило занимаются этим программисты не высокого уровня, так как час разработки профессионала стоить достаточно дорого. В результате конечный пользователь получаем огромные проблемы которые возникают после каких либо манипуляций либо с базой или клиентами. Сегодня поговорим об одной интересной ошибки которая появляется при попытке распечатать какой либо документ «Ошибка при вызове конструктора (COMOбъект) класс не зарегистрирован».

Использование COMOбъектов в 1С это прошлый век, сейчас уже ни кто так не пишет. Раньше с его помощью реализовали печать документов. Они выгружались в OpenLibre Office и от туда уже печатались.

Появиться такая ошибка может после

1 Обновления платформы

2 Переустановки ОС и 1С

3 Обновление конфигурации

4 Проблем с офисными пакетами

5 и т.д.

Это самые распространенные.

У меня есть еще несколько статей в которых я рассказывал как можно исправить различные ошибки 1С рекомендую прочитать.

Ошибка при отправке запроса на сервер

При появлении ошибки в 1С нет кнопки подробнее

Как настроить сортировку в отчете

Как сохранить обработку (как внешнюю)

Как указать версию платформы

Как посмотреть изменения в конфигурации

Три способа избавиться от ошибки «Ошибка при вызове конструктора…»

И так после каких либо манипуляций с 1С у вас стала появляться ошибка.

Ошибка при вызове конструктора (COMOбъект): -2147221164(0x80040154) класс не зарегистрирован

Ошибка при вызове конструктора (COMOбъект) класс не зарегистрирован

Ошибка при вызове конструктора (COMOбъект): -2147221164(0x80040154) класс не зарегистрирован

Первый способ

Самое простое это переустановить офисные пакеты OpenLibre, так же как вариант если у вас стоял Open поставить Libre и на оборот. Это нужно для того чтобы обновить специальный компонент.

Второй способ

Попробовать зарегистрировать самостоятельно, для этого запускаем командную строку от имени администратора, переходим в каталог введя команду.

cd windowssyswow64

И регистрируем

regsvr32 «C:Program Files (x86)1cv88.3.16.18.14comcntr.dll»

-2147221164(0x80040154) класс не зарегистрирован

Кстати данную манипуляцию нужно проводить на сервере.

Третий способ

Установить 32 битную версию клиента 1С, можно даже поверх х64. В итоге у вас появиться два ярлычка для запуска, один для х32 второй х64.

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

Версию можно указать и в ярлыке запуска 1С.

Ошибка при вызове конструктора (COMOбъект):  класс не зарегистрирован

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

Так же проблема может быть непосредственно в самом коде.

Содержание:

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 Files1cv88.3.ХХ.ХХХХbincomcntr.dll»». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.

Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.

Администратор: Командная строка   

3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом

Также есть некоторые особенности команды, которая регистрирует компоненты.

На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):

·        /u — параметр, отменяет регистрацию

·        /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.

·        /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);

·        /s – возможность отключить все сообщения при регистрации;

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

Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.

Таких программ достаточно много и писать, какое-то одно название смысла нет.

Для того чтобы быстро и качественно решать такие проблемы, необходимо изучать разнообразные статьи, для повышения уровня знаний и квалификации.

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

Олег Мороз

Недопустимая строка с указанием класса в конфе Гилёва ☑ 0

Торин

12.09.14

13:56

Уважаемые коллеги!

пытаюсь запустить конфигурации-тестеры  от Гилёва, вот такую например — BaseHASPClient82

И при первой же попытке теста получаю

{ОбщийМодуль.Привилегированный.Модуль(57)}: Ошибка при вызове конструктора (COMОбъект)

    Соединитель = Новый COMОбъект(«V82.COMConnector»);

по причине:

Недопустимая строка с указанием класса.

Ничего не могу понять — что не так с классом? Платформа 82 у меня стоит, как бы я иначе гилёвскую-то базу запустил?

1

Зеленый пень

12.09.14

14:01

(0) Запустить 1С можно и без регистрации com-коннектора в реестре. поэтому — зарегистрируй.

2

Торин

12.09.14

14:04

что именно и как нужно зарегить в реестре? Я работаю в крупной конторе и доступ к реестру тока у сисадминов. Что мне им написать?

3

Timon1405

12.09.14

14:07

чтобы зарегали comcntr.dll в папке bin именно той платформы из под которой вы запускаетесь

4

Fragster

12.09.14

14:10

поменяй на 83

Первая статья в новом 2021 году будет посвящена программе 1С. Это связанна с тем что данное ПО очень распространено. Так как альтернативы пока что нет. К типовым конфигурация претензий практически нет, в них не появляются ошибки, при обновлении, переносе и других манипуляциях. Что нельзя сказать о самопысных конфигурациях или измененных типовых. Как правило занимаются этим программисты не высокого уровня, так как час разработки профессионала стоить достаточно дорого. В результате конечный пользователь получаем огромные проблемы которые возникают после каких либо манипуляций либо с базой или клиентами. Сегодня поговорим об одной интересной ошибки которая появляется при попытке распечатать какой либо документ «Ошибка при вызове конструктора (COMOбъект) класс не зарегистрирован».

Использование COMOбъектов в 1С это прошлый век, сейчас уже ни кто так не пишет. Раньше с его помощью реализовали печать документов. Они выгружались в OpenLibre Office и от туда уже печатались.

Появиться такая ошибка может после

1 Обновления платформы

2 Переустановки ОС и 1С

3 Обновление конфигурации

4 Проблем с офисными пакетами

5 и т.д.

Это самые распространенные.

У меня есть еще несколько статей в которых я рассказывал как можно исправить различные ошибки 1С рекомендую прочитать.

Ошибка при отправке запроса на сервер

При появлении ошибки в 1С нет кнопки подробнее

Как настроить сортировку в отчете

Как сохранить обработку (как внешнюю)

Как указать версию платформы

Как посмотреть изменения в конфигурации

Три способа избавиться от ошибки «Ошибка при вызове конструктора…»

И так после каких либо манипуляций с 1С у вас стала появляться ошибка.

Ошибка при вызове конструктора (COMOбъект): -2147221164(0x80040154) класс не зарегистрирован

Ошибка при вызове конструктора (COMOбъект) класс не зарегистрирован

Ошибка при вызове конструктора (COMOбъект): -2147221164(0x80040154) класс не зарегистрирован

Первый способ

Самое простое это переустановить офисные пакеты OpenLibre, так же как вариант если у вас стоял Open поставить Libre и на оборот. Это нужно для того чтобы обновить специальный компонент.

Второй способ

Попробовать зарегистрировать самостоятельно, для этого запускаем командную строку от имени администратора, переходим в каталог введя команду.

cd windowssyswow64

И регистрируем

regsvr32 «C:Program Files (x86)1cv88.3.16.18.14comcntr.dll»

-2147221164(0x80040154) класс не зарегистрирован

Кстати данную манипуляцию нужно проводить на сервере.

Третий способ

Установить 32 битную версию клиента 1С, можно даже поверх х64. В итоге у вас появиться два ярлычка для запуска, один для х32 второй х64.

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

Версию можно указать и в ярлыке запуска 1С.

Ошибка при вызове конструктора (COMOбъект):  класс не зарегистрирован

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

Так же проблема может быть непосредственно в самом коде.

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

Текст: «Ошибка при вызове конструктора (COMObject) по причине: -2147221005(0x800401F3): Недопустимая строка с указанием класса».

Причины связаны с незарегистрированными в системе компонентами — comcntr.dll, ошибками доступа (недостаточно прав).

Решение — в регистрации библиотеки comcntr.dll из каталога программы для корректного вызова COMConnector.

Подготовительные действия

  • отключите службу Агента сервера 1С:Предприятия и программы, возможно использующие регистрируемую DLL;
  • если ранее использовалась библиотека устаревшей версии, удалите регистрацию comcntr.dll, запустив команду вызова regsvr32 с ключом /u.

Подходы к решению

1. Регистрация библиотеки comcntr.dll

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

regsvr32 "<путь к каталогу установки 1С>bincomcntr.dll"

При удачном выполнении вы увидите сообщение: «Успешное выполнение DllRegisterServer в comcntr.dll».

2. Переустановка платформы с внесением исправлений

Переустановите технологическую платформу 1С в режиме «Исправить» и отметьте COM-соединение.

3. Регистрация коннектора вручную

Регистрация приложения и коннектора вручную:

  • запускаем консоль «Службы компонентов»;
  • добавляем новый элемент, переходим «Компьютеры» — «Мой компьютер» — из списка выбираем «Приложения COM+»;
  • выбираем «Создать» — «Приложение»;
  • в Мастере установки выбираем второй вариант «Создать новое приложение», в поле «Введите имя нового приложения:» вводим «V83COMConnector», «Способ активации» устанавливаем «Серверное приложение», нажимаем «Далее»;
  • выбираем учетную запись под которой запускается приложение, по умолчанию — «Текущий (вошедший в систему) пользователь»;
  • на этапах «Добавление ролей приложения» и «Добавление пользователей для ролей» нажимаем «Далее», а затем «Готово».

В ветке только что созданного приложения переходим в подветку «Компоненты» и создаем компонент:

  • в контекстном меню выбираем «Создать» — «Компонент»;
  • кликаем по первому варианту «Установка новых компонентов»;
  • в открывшемся диалоге выбираем необходимый файл comcntr.dll и нажимаем «Открыть»;
  • нажимаем «Далее» и «Готово».

Обратите внимание: после установки измените свойства объекта. Для этого переходим к ветке V83COMConnector:

  • открываем свойства созданного компонента, переходим в ветку V83COMConnector — «Свойства»;
  • на вкладке «Безопасность», в «Авторизация» снимаем флаг «Принудительная проверка доступа для приложений»;
  • в «Политика программных ограничений» устанавливаем флаг «Применить политику программных ограничений» и выбираем «Уровень ограничений:» — «Неограниченный»;
  • нажимаем «Применить» — «ОК».

Полная версия со снимками экранов — в статье на Дзен-канале.

Класс V83COMConnector зарегистрирован и доступен для подключения к информационным базам. Обмен данными между базами восстановлен, и фоновый процесс завершается без ошибок.

Если не получается и требуется дополнительная поддержка — наши специалисты готовы вам помочь → +7-911-500-10-11

Содержание:

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 Files1cv88.3.ХХ.ХХХХbincomcntr.dll»». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.

Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.

Администратор: Командная строка   

3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом

Также есть некоторые особенности команды, которая регистрирует компоненты.

На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):

·        /u — параметр, отменяет регистрацию

·        /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.

·        /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);

·        /s – возможность отключить все сообщения при регистрации;

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

Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.

Таких программ достаточно много и писать, какое-то одно название смысла нет.

Для того чтобы быстро и качественно решать такие проблемы, необходимо изучать разнообразные статьи, для повышения уровня знаний и квалификации.

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

Олег Мороз

В этой статье речь пойдет об ошибках в COM-соединениях. Один из вариантов ошибки –
это «Ошибка при вызове конструктора (COMObject):
-2147221164(0x80040154): Класс не зарегистрирован…»
. Бывают и другие варианты
сообщений, все я перечислять не буду, в большинстве случаев — это означает, что
при установке платформы компонента comcntr.dll не смогла зарегистрироваться
автоматически.
COM — соединения используются в обменах между конфигурациями.

У меня в готовых решениях есть обработка
загрузки сотрудников из ЗУП, в которой тоже используется
COM — соединение и у
пользователей тоже может появиться ошибка. В случае с моей обработкой, при
проверке соединения, может появиться сообщение, что невозможно установить
соединение с конфигурацией ЗУП.  Это
может произойти, если Вы неправильно указали настройки подключения, неправильно
настроены права пользователя, через которого Вы подключаетесь или чаще всего – проблема
в компоненте comcntr.dll, которая при смене платформы автоматически не
зарегистрировалась. Вот и рассмотрим, как ее зарегистрировать вручную.

Первое что нужно сделать, это запустить
командную строку от имени администратора.

В командной строке Windows набираете cmd, в
писке выбора появится программа с таким названием, устанавливаете курсор на эту
программу и выбираете из контекстного меню «Запуск под администратором» (см.
картинку ниже).

Запуск командной строки от имени администратора

Затем ввести команду (можно двумя способами):

1.     
regsvr32
«C:Program Files (x86)1cv8[
версия платформы]bincomcntr.dll»

2.     
C:Program
Files (x86)1cv8[
версия платформы]bin>regsvr32 comcntr.dll

Прежде чем ввести эти команды нужно
переместиться по каталогам. Допустим, при запуске командной строки появляется
совсем другой каталог, пример можно увидеть на картинке ниже.

командная строка

Для смены каталога нужно написать cd, после которого установить пробел, а
затем указать тот путь, который нам нужен, например
C:Program Files (x86)1cv8[версия платформы]bin, затем после указания пути к каталогу нажимаете Enter. Смотрите пример смены каталога на
картинке ниже.

смена каталога в cmd

Вот теперь
рядом с каталогом можно ввести
regsvr32 comcntr.dll, нажать Enter и
зарегистрировать компоненту (смотрите пример на картинке ниже).

запуск regsvr3

Если все
сделали правильно, то получите сообщение (см. картинку ниже).

успешное выполнение регистрации компоненты comcntr.dll

Если компоненту не удалось
зарегистрировать, проверьте как вы запустили командную строку, возможно, что
забыли запустить от имени администратора. Если все в порядке, то нужно отключить
службу агента сервера 1С:Предприятия и все программы, использующие эту DLL. 

После сообщения об успешной регистрации,
можно вновь запустить обмен или обработку, с которой у вас возникли проблемы.  

  1. 30.10.2018, 10:03

    #11

    DoCaru вне форума


    Просто юзер


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от Akbar11
    Посмотреть сообщение

    Делал, и не раз)

    ты про что?


  2. 30.10.2018, 10:04

    #12

    Akbar11 вне форума


    Пришел за помощью


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от vitalshim
    Посмотреть сообщение

    Запускать от имени администратора

    Делал, и не раз. Не помогло. Все что предлагает гугол сделал


  3. 30.10.2018, 10:21

    #13

    DoCaru вне форума


    Просто юзер


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от Akbar11
    Посмотреть сообщение

    Делал, и не раз. Не помогло. Все что предлагает гугол сделал

    ты на сервере офис поставил?


  4. 30.10.2018, 10:23

    #14

    Akbar11 вне форума


    Пришел за помощью


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от DoCaru
    Посмотреть сообщение

    ты на сервере офис поставил?

    Нет, если поставить решит проблему?


  5. 30.10.2018, 10:23

    #15

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от vitalshim
    Посмотреть сообщение

    regsvr32 «C:Program Files1cv88.3.10.2466bincomcntr.dll»

    мдя-я-я.. а причем тут 1С, когда проблема в Экселе…

    Цитата Сообщение от Akbar11
    Посмотреть сообщение

    Всем привет, ребята ошибка распространённая. Облазил все темы. Даже в гуголе до 10 страницы добрался ничего не помогает. Все перепробовал. Вот сама ошибка. База серверная
    Конфигурация ИТИЛ 1С:ITIL. Управление информационными технологиями предприятия. ПРОФ, редакция 1.1. Версия платформы 1С:Предприятие 8.3 (8.3.10.2466). При выполнение кода

    Код:

    ExcelApplication = Новый COMObject("Excel.Application");

    Ошибка

    Код:

    {ВнешняяОбработка.ЗагрузкаЭлектроныхАдресовИзЭксель.Форма.Форма.Форма(4)}: Ошибка при вызове конструктора (COMObject)
          ExcelApplication = Новый COMObject("Excel.Application");
    по причине:
    -2147221005(0x800401F3): Недопустимая строка с указанием класса

    Может кто подскажет что еще может быть, что еще можно сделать. Ну или хотя бы вместе разберемся с этой проблемой.

    Если проблема с экселем — значит не зарегистрирован ком-объект Экселя. Как правило при установке офиса под админскими правами — это делается автоматически. но я сталкивался с ситуациями, когда офис ставили под обрезанными правами «пользователя» и другой раз ставили «офис 365» — и соответствующие ком-компоненты экселя и ворда не регились.


  6. 30.10.2018, 10:42

    #16

    Akbar11 вне форума


    Пришел за помощью


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от avm3110
    Посмотреть сообщение

    мдя-я-я.. а причем тут 1С, когда проблема в Экселе…

    Если проблема с экселем — значит не зарегистрирован ком-объект Экселя. Как правило при установке офиса под админскими правами — это делается автоматически. но я сталкивался с ситуациями, когда офис ставили под обрезанными правами «пользователя» и другой раз ставили «офис 365» — и соответствующие ком-компоненты экселя и ворда не регились.

    Офис стоит, под правами администратора у меня на компутере. Заметил что на сервере не стоит Эксель, Возможно, что это как то влияет.


  7. 30.10.2018, 10:43

    #17

    DoCaru вне форума


    Просто юзер


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от Akbar11
    Посмотреть сообщение

    Офис стоит, под правами администратора у меня на компутере. Заметил что на сервере не стоит Эксель, Возможно, что это как то влияет.

    тебе уже 2 человека сказали, что поставь на сервер под правами админа офис. Че еще то не понятно?


  8. 30.10.2018, 10:59

    #18

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от Akbar11
    Посмотреть сообщение

    Офис стоит, под правами администратора у меня на компутере. Заметил что на сервере не стоит Эксель, Возможно, что это как то влияет.

    Мдя-я-я.. А какая разница что «стоит»??? Смысл гадать? Зайди в regedit и поиском посмотри — есть ли у тебя зарегистрированная компонента «Excel.Application»


  9. 30.10.2018, 11:05

    #19

    Akbar11 вне форума


    Пришел за помощью


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    Цитата Сообщение от DoCaru
    Посмотреть сообщение

    тебе уже 2 человека сказали, что поставь на сервер под правами админа офис. Че еще то не понятно?

    Теперь понятно, попробую)


  10. 30.10.2018, 11:37

    #20

    DoCaru вне форума


    Просто юзер


    По умолчанию Re: Ошибка при вызове конструктора (COMObject)

    не забудь отписаться, если помогло. Чтобы потом другие не лопатили 10 страниц гугла


Содержание:

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».

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

Лев Туренко

  • Тест виндовс 10 на ошибки
  • Тест видеопамяти на ошибки
  • Тест биоса на ошибки
  • Тест видеокарты radeon на ошибки
  • Тест бентона органические ошибки