Почему 1С зависает при запуске базы по сети и как это исправить

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Ситуация, когда информационная база 1С прекрасно открывается на одном компьютере, но «намертво» зависает при попытке входа по сети с другого, является классической для файловых вариантов работы. Особенно часто это встречается в одноранговых сетях (без домена), где компьютеры связаны через обычный коммутатор или Wi-Fi. В этой статье мы подробно разберем, почему возникает ошибка 1cv8c.exe с кодом «программа прекратила взаимодействие с Windows», и пошагово устраним причины этого поведения.

Анализ симптомов и диагностика

Прежде всего, проанализируем вводные данные. Если папка с базой доступна через проводник, но сама 1С виснет до появления окна выбора пользователя, это сужает круг поиска до трех основных направлений: проблемы сетевых протоколов (SMB), ожидание ответа от ключа защиты (HASP) или блокировка прав доступа на уровне файловой системы. В системных логах Windows это часто фиксируется как ошибка AppHang (событие с кодом 1002), что указывает на бесконечный цикл ожидания ресурса.

Шаг 1. Настройка прав доступа на «шару» и NTFS

Разберем типичную ошибку: пользователь проверяет права на вкладке «Безопасность», видит там «Полный доступ» и успокаивается. Однако для работы 1С в сетевом режиме этого недостаточно. Выясним причину: 1С создает временные файлы блокировок (*.1cL), и если у пользователя нет прав на их создание или удаление в сетевом ресурсе, программа зависнет.

Проверим настройки доступа совместно:

  1. Перейдем к папке, где лежит база на «сервере» (главном ПК).
  2. Нажмем правой кнопкой — «Свойства» — вкладка «Доступ».
  3. Нажмем «Расширенная настройка» — «Разрешения».
  4. Убедимся, что для группы «Все» или конкретного пользователя установлена галочка «Полный доступ» (или как минимум «Изменение» и «Чтение»).
  5. Только после этого перейдем на вкладку «Безопасность» и убедимся, что права NTFS также позволяют изменять и записывать файлы.

Шаг 2. Оптимизация протокола SMB и отключение Directory Leasing

В современных версиях Windows (10 и 11) по умолчанию включены механизмы оптимизации трафика SMB 2/3. Один из них — Directory Leasing. Рассмотрим подробнее, как он мешает 1С: когда клиент открывает папку, Windows кэширует структуру директории. Если другой клиент (или сама 1С) пытается изменить файл блокировки, возникает конфликт приоритетов, и приложение «замирает».

Для решения проблемы на всех компьютерах (и на сервере, и на клиентах) выполним следующие действия в реестре:

  1. Запустим regedit.
  2. Перейдем в ветку: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters.
  3. Создадим (если его нет) параметр DWORD (32 бита) с именем DirectoryLeasingEnabled и установим значение 0.
  4. Также рекомендуется создать параметр FileInfoCacheLifetime и установить его в 0.
  5. Перезагрузим компьютер для применения настроек.

Шаг 3. Настройка поиска лицензии через nnhasp.ini

Если 1С виснет именно до окна выбора пользователя, велика вероятность, что она тратит время на поиск ключа защиты. В одноранговых сетях поиск идет широковещательными запросами по всей сети. Если в сети есть блокировки UDP-пакетов или установлены антивирусы, 1С будет ждать ответа до истечения таймаута.

Проанализируем решение через конфигурационный файл nnhasp.ini. Этот файл находится в папке с установленной платформой (обычно C:\Program Files (x86)\1cv8\conf или в папке конкретной версии bin\conf).

Настроим файл следующим образом:


[NH_TCPIP]
; Указываем конкретный IP адрес компьютера, где стоит ключ
NH_SERVER_ADDR = 192.168.1.10 
; Отключаем широковещательный поиск (Broadcast)
NH_USE_BROADCAST = Disabled
; Указываем протокол
NH_TCPIP_METHOD = TCP

Эти настройки заставят 1С обращаться напрямую к серверу лицензий, не опрашивая всю сеть, что мгновенно убирает «зависание» при старте.

Шаг 4. Исключения DEP и антивируса

Версия платформы 8.3.14.1565, упомянутая в логах, может конфликтовать с механизмом предотвращения выполнения данных (DEP). Посмотрим, как добавить 1С в исключения:

  1. «Панель управления» — «Система» — «Дополнительные параметры системы».
  2. Вкладка «Дополнительно», раздел «Быстродействие» — «Параметры».
  3. Вкладка «Предотвращение выполнения данных».
  4. Выберем «Включить DEP для всех программ, кроме выбранных ниже» и добавим файл 1cv8c.exe из папки bin вашей версии платформы.

Важно: Не забудем добавить папку с базой и процессы 1С в исключения антивируса. Антивирусы часто блокируют сетевую активность 1С, так как она генерирует большое количество мелких запросов к файлу .1CD.

Шаг 5. Работа с сетевыми протоколами (IPv6)

В некоторых случаях Windows пытается разрешить имя компьютера через протокол IPv6. Если в сети настроен только IPv4, это вызывает задержки при сопоставлении имен. Проанализируем простой тест: попробуем подключить базу не по имени компьютера (например, \\Server1C\Bases), а по его IP-адресу (например, \\192.168.1.10\Bases). Если по IP база открывается быстро — проблема в DNS или IPv6. В таком случае стоит отключить IPv6 в свойствах сетевого адаптера.

Итоги

Мы разобрали комплекс мер по устранению зависания 1С. Помните, что файловый режим работы по сети крайне чувствителен к качеству канала и стабильности блокировок Windows. Если вышеописанные шаги помогают лишь временно, рекомендуем рассмотреть переход на клиент-серверный вариант или использование тонкого клиента через веб-сервер (Apache или IIS), что полностью снимает проблемы с сетевыми блокировками файлов .1CD.

← На главную