При переносе рабочих мест пользователей 1С:Предприятия на новый терминальный сервер (Remote Desktop Services) нередко возникает ситуация, когда внешние компоненты, драйверы оборудования (РРО, ККТ) или вспомогательные обработки для парсинга буфера обмена успешно выполняются только под учетной записью администратора. Если сеанс запускает обычный пользователь терминала (или даже администратор без явного повышения прав), работа с COM-объектами завершается ошибками доступа.
Разберем основные причины этой проблемы и пошагово рассмотрим системные настройки, позволяющие восстановить корректное функционирование COM-компонентов для всех терминальных пользователей.
Если в 1С используется обработка, обращающаяся к буферу обмена через COM-объекты (например, через объекты браузера или интерфейсы автоматизации) для вставки скопированных табличных данных, операционная система может блокировать скриптовый доступ к буферу в целях безопасности сессии.
Разберем по шагам, как снять это ограничение с помощью редактора локальной групповой политики:
gpedit.msc и нажмите Enter.gpupdate /force в командной строке.Многие OPOS-драйверы фискальных регистраторов и принтеров чеков создают служебные ключи и хранят свои параметры конфигурации в системной ветке реестра HKEY_LOCAL_MACHINE\SOFTWARE. По умолчанию обычные пользователи терминала имеют права только на чтение этих параметров. Если драйвер при инициализации или отправке чека на печать пытается модифицировать системные ключи или записывать в них статус устройства, операция блокируется.
Рассмотрим, как настроить права на ветку реестра драйвера:
regedit и подтвердите запуск с правами администратора.HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail или HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\OLEforRetail (а также в ветках наименования конкретного производителя).Проанализируем конфигурацию прав службы компонентов DCOM на терминальном сервере, когда COM-объект или V83.COMConnector не запускается от имени непривилегированного пользователя:
dcomcnfg.Выясним дополнительные технические факторы, которые могут препятствовать вызову COM-компонентов:
%SystemRoot%\SysWoW64\regsvr32.exe "C:\Path\To\Component.dll"
C:\Program Files (x86)\. Убедитесь, что у терминальных пользователей есть права на запись в рабочую папку драйвера и в системный каталог C:\Windows\Temp.В современных конфигурациях 1С рекомендуется уходить от прямой работы с COM-объектами и OPOS-драйверами в терминальных сессиях:
ПодключитьВнешнююКомпоненту. Это избавляет от зависимости от системного реестра Windows и службы DCOM.COMConnector используйте встроенные HTTP-сервисы или Web-сервисы (SOAP), обеспечивающие стабильную работу независимо от сеансов пользователей на RDS-сервере.