Переход на 64-разрядную версию сервера 1С:Предприятие часто вызывает вопросы у системных администраторов и специалистов по автоматизации. Распространенной практикой в небольших сетях ранее было копирование каталога платформы в общую сетевую папку (шару) и запуск исполняемых файлов напрямую оттуда. Однако при использовании 64-битного сервера и разродненного парка операционных систем (32-бит и 64-бит Windows) такой подход приводит к сбоям, ошибкам несовпадения версий и невозможности запуска Конфигуратора.
Рассмотрим подробно, как корректно организовать работу клиентских приложений с 64-разрядным сервером 1С, выясним причины возникающих ошибок и разберем штатные варианты разворачивания платформы на рабочих станциях.
Проанализируем главное правило взаимодействия клиентских приложений и сервера 1С: 32-разрядный клиент 1С:Предприятие полностью совместим с 64-разрядным сервером 1С. Разрядность клиентского приложения и разрядность сервера не обязаны совпадать.
Ключевым условием успешного подключения является строгое совпадение номера релиза (версии) платформы клиента и сервера. Например, если на сервере установлен кластер версии 8.3.23.1688 (64-бит), то на клиентском компьютере должно быть запущено приложение версии 8.3.23.1688 (как 32-бит, так и 64-бит).
Разберем основные особенности применения разрядности:
Рассмотрим, почему простой запуск бинарных файлов из расшаренной сетевой папки является ошибочной практикой и приводит к нестабильной работе:
comcntr.dll (V83.ComConnector). Из-за этого блокируется работа внешних соединений, программного обмена между базами и интеграций с другими системами.HKEY_CLASSES_ROOT не создаются необходимые записи о зарегистрированных типах файлов и версиях платформы. Утилита запуска 1cestart.exe не может корректно определить список установленных локально платформ.Платформа 1С:Предприятие содержит встроенный механизм централизованного обновления клиентских приложений без использования сторонних скриптов. Разберем по шагам, как настроить эту схему:
1cestart.exe).1CESCmn.cfg (или в локальном 1cestart.cfg) указываем параметр DistributiveLocation, ссылающийся на сетевой каталог с дистрибутивами.Пример содержимого файла конфигурации 1CESCmn.cfg:
CommonInfoBases=//server/1c_share/ibases.v8i
DistributiveLocation=//server/1c_share/distr
DefaultVersion=8.3
При попытке подключения к информационной базе утилита 1cestart.exe запрашивает у сервера 1С требуемый номер релиза. Если нужная версия не найдена на локальном ПК, стартер автоматически скачивает дистрибутив из сетевого каталога DistributiveLocation, выполняет фоновую («тихую») установку и затем запускает сеанс пользователя.
Посмотрим на наиболее надежный и безопасный вариант разворачивания 1С в доменной сети Active Directory. Этот способ исключает необходимость предоставления пользователям прав администратора на локальных компьютерах.
Проанализируем порядок действий системного администратора:
1CEnterprise 8.3.msi) и файл ответов 1CEnterprise 8.3.mst для настройки параметров установки.Создаем две отдельные политики или используем фильтрацию WMI (WMI Filtering):
Если на компьютере установлены обе версии платформы (32-бит и 64-бит), мы можем явно управлять разрядностью запускаемого процесса с помощью ключа командной строки /AppArch.
Разберем возможные значения ключа /AppArch:
/AppArch x86 — принудительный запуск 32-разрядного клиента 1С:Предприятие./AppArch x86_64 — принудительный запуск 64-разрядного клиента 1С:Предприятие.Пример строки запуска информационной базы с явным указанием 32-битной архитекутры:
"C:\Program Files (x86)\1cv8\common\1cestart.exe" ENTERPRISE /S "server1c\production" /AppArch x86
Если инфраструктура компании включает большой парк устаревших ПК или удаленные филиалы, рассмотрим альтернативные архитектурные решения:
Таким образом, для стабильной работы 64-битного сервера 1С достаточно использовать 32-битные клиенты аналогичного релиза, развернутые локально на рабочих станциях с помощью групповых политик GPO или штатного механизма обновления 1cestart.exe.