При интеграции сторонних приложений с 1С через COM-соединитель можно столкнуться с ситуацией, когда подключение успешно работает, если программа 1С уже запущена на сервере, но завершается ошибкой, если ее нужно запустить автоматически. Чаще всего текст ошибки выглядит так: "The server process could not be started because the configured identity is incorrect. Check the username and password" (Серверный процесс не может быть запущен из-за неверно настроенного удостоверения. Проверьте имя пользователя и пароль).
Эта проблема особенно характерна для 64-разрядных операционных систем. Разберем по шагам, как диагностировать и устранить эту ошибку.
Главная и самая частая причина этой ошибки на 64-битных версиях Windows — несоответствие разрядности. На такой системе существует две среды для выполнения COM-объектов: 64-битная и 32-битная (WOW64). Соответственно, есть и две отдельные утилиты для настройки DCOM.
Если ваше внешнее приложение, которое пытается подключиться к 1С (например, программа на Delphi, C# или скрипт VBS), является 32-битным, то и настраивать права для COM-объекта 1С нужно в 32-битной оснастке "Службы компонентов".
Когда вы просто запускаете dcomcnfg из командной строки, по умолчанию открывается 64-битная версия, и все ваши настройки применяются не к той среде, которую использует ваше приложение.
Чтобы запустить 32-битную версию утилиты "Службы компонентов", выполним следующие действия:
mmc comexp.msc /32
Службы компонентов -> Компьютеры -> Мой компьютер -> Настройка DCOM.V83.COMConnector.После выполнения этих шагов и применения настроек, ваше 32-битное приложение сможет корректно запускать COM-сервер 1С.
Даже в правильной версии оснастки важно корректно указать пользователя, от имени которого будет запускаться процесс 1С. Рассмотрим варианты на вкладке "Удостоверение".
Для максимальной надежности и безопасности рекомендуется создать отдельного пользователя Windows специально для запуска COM-соединения.
1CComUser). Задайте ему надежный пароль, который не истекает.V83.COMConnector (в 32-битной или 64-битной оснастке, в зависимости от вашего приложения) на вкладке "Удостоверение" выберите "Указанный пользователь". Введите логин и пароль созданного пользователя (1CComUser).secpol.msc).Локальные политики -> Назначение прав пользователя.1CComUser.1CComUser есть права на чтение и выполнение для каталога установки платформы 1С (например, C:\Program Files\1cv8), а также права на запись во временные папки Windows.После выполнения этих настроек ваше COM-соединение будет работать стабильно и безопасно, независимо от того, запущен ли клиент 1С и вошел ли кто-то в систему на сервере.