В практике системного администрирования 1С часто встречается ситуация, когда платформа 1С:Предприятие 8.3 (особенно версии 8.3.10 и выше) начинает вести себя нестабильно у конкретного пользователя. Одной из самых загадочных проблем является невозможность запуска любой информационной базы, при этом у остальных сотрудников всё работает в штатном режиме. Рассмотрим подробно причины возникновения этой ошибки в клиент-серверном варианте работы, особенно когда исполняемые файлы платформы запускаются из сетевой папки («шары»).
Проанализируем техническую среду, описанную в ситуации: рабочие станции на Windows 10 обращаются к серверу Windows Server 2003, на котором расшарена папка с платформой. Основная причина кроется в безопасности современных операционных систем. В новых обновлениях Windows 10 корпорация Microsoft принудительно отключает протокол SMB 1.0 из-за его уязвимости. Windows Server 2003, в силу своего возраста, поддерживает только этот устаревший протокол.
Разберем, как это влияет на 1С. Когда пользователь пытается запустить 1cestart.exe или 1cv8.exe из такой сетевой папки, операционная система может заблокировать выполнение сетевых вызовов библиотек, что приводит к критической ошибке еще до появления окна выбора информационных баз. Решением в данном случае является перенос дистрибутивов платформы на сервер с поддержкой SMB 2.0/3.0 (Windows Server 2008 и выше) или временное включение компонента SMB 1.0/CIFS File Sharing Support в компонентах Windows на клиентской машине.
Выясним причину, по которой механизмы защиты Windows могут блокировать 1С. Функция DEP (Data Execution Prevention) предназначена для мониторинга использования памяти и предотвращения запуска вредоносного кода. Однако алгоритмы 1С при запуске из сети могут ложно распознаваться как угроза. Выполним следующие действия для настройки исключений:
sysdm.cpl).1cv8.exe, 1cv8c.exe и 1cestart.exe.Проанализируем ситуацию, когда стандартная «чистка кеша» (удаление папок в %AppData%\1C\1cv8) не помогает. У 1С существуют глобальные настройки запуска, которые хранятся в файле 1CEStart.cfg. Если этот файл поврежден или содержит некорректные пути, доступные только администратору, обычный пользователь получит ошибку запуска.
Рассмотрим структуру папок, которые необходимо проверить и очистить вручную:
%AppData%\1C\1CEStart — здесь лежит файл конфигурации стартера. Попробуем временно переименовать его и запустить 1С снова.%LocalAppData%\1C\1cv8 — локальный кеш версий.%AppData%\1C\1cv8\Common\1cescmn.cfg — общие настройки списков баз.Посмотрим на пример того, как должен выглядеть корректный путь в файле 1CEStart.cfg:
InstalledLocation=C:\Program Files\1cv8
CommonCfgLocation=\\Server2008\1c_distr\common.cfg
DefaultVersion=8.3.10.2580
Выясним, достаточно ли прав у пользователя для работы с системными ресурсами. Платформа 1С при запуске активно использует папку %TEMP% для распаковки своих компонентов и создания временных файлов сессии. Если у пользователя ограничены права на запись в эту директорию или она переполнена, запуск любой базы станет невозможным.
Рекомендуем выполнить следующие шаги:
C:\Users\ИмяПользователя\AppData\Local\Temp.1cv8.exe.Если все вышеперечисленные методы не принесли результата, проблема может заключаться в повреждении ветки реестра, отвечающей за настройки пользователя в 1С. Проанализируем способ «мягкого» сброса настроек через Registry Editor:
regedit.HKEY_CURRENT_USER\Software\1C.1cv8 и выберем Экспортировать (для создания резервной копии).При следующем запуске 1С заново создаст необходимые ключи в реестре с настройками по умолчанию, что часто решает проблему «необъяснимых» ошибок одного пользователя.
Для ОС Windows 10 характерны проблемы с отрисовкой графического интерфейса 1С на некоторых драйверах видеокарт. Хотя это чаще проявляется в виде «черных окон», иногда критический сбой драйвера происходит в момент инициализации окна выбора баз. Чтобы проверить эту версию, попробуем запустить 1С с параметром отключения аппаратного ускорения. В свойствах ярлыка 1С в поле "Объект" добавим параметр /NoExecute0:
"C:\Program Files\1cv8\common\1cestart.exe" /NoExecute0
Это заставит платформу использовать альтернативные методы отрисовки интерфейса, что может стабилизировать запуск на специфическом оборудовании.
Подводя итог, можно сказать, что ошибка «у одного пользователя» в 90% случаев связана с окружением этого пользователя: правами доступа, сетевыми протоколами между его ПК и сервером или локальными поврежденными конфигами. В случае использования Windows Server 2003 самым надежным и долгосрочным решением будет отказ от запуска платформы через сетевую шару на этой ОС и переход на локальную установку клиента или использование более современного файлового сервера.