При смене версии платформы 1С:Предприятие часто возникают проблемы с инициализацией COM-объектов, таких как V83.COMConnector или Excel.Application. Ошибка «Invalid class string» свидетельствует о том, что операционная система не может найти запись в реестре, соответствующую указанному объекту, так как пути к библиотекам после обновления или отката версии платформы стали неактуальными.
Первым делом необходимо убедиться, что библиотека comcntr.dll зарегистрирована именно для той версии платформы, которую вы используете в данный момент. Если вы откатились с версии 8.3.21 на 8.3.16, в реестре могут остаться записи, указывающие на старые пути.
Для корректной перерегистрации выполните следующие действия в командной строке от имени администратора:
bin текущей версии платформы (например, C:\Program Files\1cv8\8.3.16.1148\bin).
1cv8.exe /unregserver
regsvr32 comcntr.dll /u
1cv8.exe /regserver
regsvr32 comcntr.dll
Иногда автоматической регистрации недостаточно, так как в реестре Windows сохраняются «хвосты» от предыдущих установок. Давайте проанализируем, как найти и исправить такие записи:
Используйте редактор реестра regedit для поиска всех вхождений bin\comcntr.dll. Если вы обнаружите, что пути в ветках реестра ведут к папке платформы 8.3.21, а вы работаете на 8.3.16, вручную замените эти пути на актуальные. Будьте крайне осторожны при редактировании реестра и предварительно создайте его резервную копию.
Если после настройки V83.COMConnector ошибка все еще возникает при вызове Excel.Application, необходимо понимать, что Excel.Application не является частью 1С. Это объект, предоставляемый пакетом Microsoft Office. Чтобы выяснить причину, разберем возможные сценарии:
.vbs и вставьте в него следующий код:
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
При работе с COM-объектами на сервере всегда учитывайте ограничения прав доступа. Часто DCOM требует прав для пользователя, под которым работает сервер 1С. Если вы используете интерактивные приложения, такие как Excel, на серверных операционных системах, помните, что это может вызывать проблемы с инициализацией графического интерфейса, поэтому по возможности используйте альтернативные способы работы с файлами (например, чтение через SpreadsheetDocument или библиотеки OpenXML, которые не требуют установки Excel).
Надеемся, что эти шаги помогут вам успешно настроить взаимодействие между 1С и внешними компонентами!