При переходе на новые версии платформы «1С:Предприятие», начиная с релиза 8.3.16, многие системные администраторы и пользователи столкнулись с неожиданным поведением системы. Сразу после запуска клиентского приложения средства защиты (антивирусы, блокировщики вымогателей, такие как Trend Micro Ransom Buster, Kaspersky или встроенный контролируемый доступ к папкам Windows Defender) начинают выдавать предупреждения. Они сообщают, что неизвестный процесс пытается получить доступ к защищенной пользовательской директории «Мои документы». В этой статье мы подробно разберем, почему это происходит, как провести самостоятельную диагностику и какими способами можно решить эту проблему.
1cv8p64.bin?Для начала давайте разберемся, какой именно файл вызывает подозрения у системы безопасности. Логи антивирусного ПО и утилиты мониторинга указывают на исполняемый файл 1cv8p64.bin (или 1cv8p32.bin для 32-разрядных клиентов). Этот файл расположен в каталоге установленной платформы 1С (например, C:\Program Files\1cv8\8.3.16.1063\bin\).
Рассмотрим подробнее изменения в архитектуре платформы, которые произошли в ветке 8.3.16. Разработчики фирмы «1С» приняли решение изолировать подсистему работы с принтерами. Раньше функции опроса параметров печати выполнялись непосредственно основным процессом 1С. Если у пользователя был установлен нестабильный или зависший драйвер принтера, это приводило к падению всего сеанса 1С с потерей несохраненных данных. Теперь же опрос принтеров и отправка документов на печать делегированы отдельным внешним процессам — 1cv8p64.bin и 1cv8p32.bin. Если драйвер принтера дает сбой, это затрагивает только изолированный процесс печати, а сам клиент 1С продолжает работать в штатном режиме.
PATH?При запуске клиентского приложения 1С автоматически инициализирует изолированную подсистему печати. В этот момент вспомогательный процесс пытается собрать информацию обо всех доступных в операционной системе принтерах. Проанализируем, почему при этом затрагивается папка пользователя:
1cv8p64.bin последовательно сканирует все пути, прописанные в системной переменной окружения PATH, в поисках необходимых для работы динамических библиотек принтеров. Поскольку профиль пользователя и его личные папки могут быть ассоциированы с путями поиска, процесс обращается и к ним.Если вы хотите лично убедиться в том, какие именно запросы отправляет платформа, выполним диагностику с помощью профессиональной утилиты Process Monitor (ProcMon) от Sysinternals. Разберем этот процесс по шагам:
Process Name — is — 1cv8p64.bin — Include (или 1cv8p32.bin для 32-битного клиента).
Path — contains — Documents — Include.
CreateFile, QueryOpen или FastIoQueryOpen к путям ваших документов, которые завершаются статусом ACCESS DENIED (если доступ заблокирован средством защиты) или успешно проходят дальше, выполнив чтение свойств директории.Пример лога, который вы можете зафиксировать в утилите:
12:00:00,1234567 1cv8p64.bin 1234 CreateFile C:\Users\Username\Documents ACCESS DENIED Desired Access: Read Data/List Directory
12:00:00,1235678 1cv8p64.bin 1234 QueryOpen C:\Users\Username\Documents SUCCESS
Рассмотрим несколько эффективных методов устранения назойливых предупреждений систем защиты и оптимизации работы подсистемы печати.
Поскольку файлы 1cv8p32.bin и 1cv8p64.bin имеют расширение .bin, но фактически запускаются в операционной системе как исполняемые файлы (EXE), проактивная защита многих антивирусов считает их поведение подозрительным. Чтобы решить эту проблему раз и навсегда, необходимо внести данные файлы в белый список вашей программы безопасности.
Посмотрим, как это сделать на примере стандартных средств защиты:
1cv8p32.bin и 1cv8p64.bin из каталога установленной платформы 1С.Часто долгий запуск клиента 1С (сопровождающийся зависанием на 15-20 секунд) и постоянные попытки сканирования папок связаны с наличием «мертвых» сетевых или виртуальных принтеров. Система пытается достучаться до сетевого ресурса принтера, который уже давно выключен или находится в другой локальной сети.
Для оптимизации работы подсистемы печати выполним следующие действия:
PowerShell от имени администратора и выполните следующую команду для просмотра списка сетевых принтеров и портов, чтобы убедиться в отсутствии скрытых зависших подключений:
Get-Printer | Format-Table Name, PortName, Shared, Published
Если в списке портов вы видите старые IP-адреса несуществующих серверов печати, удалите эти принтеры через контекстное меню или с помощью команды Remove-Printer -Name "Имя_Принтера".
В ранних релизах ветки 8.3.16 существовала задокументированная ошибка работы изолированного процесса печати. Если имя установленного в системе принтера содержало русские буквы (например, «Принтер в бухгалтерии»), процесс 1cv8p64.bin не мог корректно обработать кодировку, впадал в бесконечный цикл опроса или падал с ошибкой «Ошибка при получении характеристик принтера».
Чтобы избежать подобных коллизий, переименуйте все принтеры в операционной системе, используя исключительно латинские символы и цифры (например, HP_LJ_Enterprise или Kyocera_Office_301).
Иногда параметры печати конкретных табличных документов кэшируются в настройках пользователя внутри информационной базы 1С. Если структура метаданных или принтеры изменились, старый кэш может заставлять систему непрерывно искать несуществующие каталоги сохранения файлов.
Для исправления этой ситуации выполним сброс настроек печати для пользователя:
Применяя данные методы в комплексе, мы не только избавимся от ложных срабатываний антивирусного программного обеспечения, но и значительно ускорим старт клиентского приложения 1С, исключив ненужные задержки при инициализации печати.