При работе с файловыми базами 1С:Предприятие 8.3 пользователи часто сталкиваются с ситуацией, когда штатный механизм резервного копирования (через пользовательский режим) перестает работать. Процесс запускается, но вместо создания архива программа «зависает» или выдает ошибку о невозможности блокировки базы. В итоге администратору приходится вручную удалять файлы блокировок (*.1cl, *.cdn), чтобы возобновить работу. Проанализируем причины этого поведения и разберем по шагам, как восстановить работоспособность системы.
Прежде чем переходить к исправлению, выясним причину возникновения проблемы. В управляемых формах 1С (например, в «Бухгалтерии предприятия 3.0») при нажатии кнопки «Создать резервную копию» программа не выполняет копирование самостоятельно. Она инициирует сложную цепочку действий:
bin установленной платформы.Если хотя бы одно звено этой цепи (особенно визуальный интерфейс HTA) дает сбой, процесс «замирает». Блокировка остается активной, а сама копия не создается.
Как показывает практика, основной причиной сбоя является отсутствие или некорректная регистрация компонента mshta.exe в операционной системе. Это может произойти после обновлений Windows, действий антивирусного ПО или чистки реестра. Проанализируем ситуацию и выполним восстановление:
Рассмотрим порядок действий для 64-битных систем Windows (на которых чаще всего работает 32-битная версия 1С):
C:\Windows\SysWOW64\mshta.exe. Если файла там нет, его необходимо скопировать с аналогичной исправной системы или восстановить через средства проверки системных файлов Windows..hta и убедимся, что для него выбрана программа Microsoft (R) HTML Application host (это и есть mshta.exe).Если ассоциации через интерфейс настроек не помогают, воспользуемся редактированием реестра. Рассмотрим, как должна выглядеть строка запуска в ключе HKEY_CLASSES_ROOT\htafile\shell\open\command:
"C:\Windows\SysWOW64\mshta.exe" "%1" {1E460BD7-F828-11D2-84B0-444100000000} {1E460BD7-F828-11D2-84B0-444100000000}
Иногда бэкап не может стартовать из-за того, что в базе остаются «невидимые» пользователи или незавершенные фоновые задания. Даже если интерфейс программы закрыт, процессы могут висеть в памяти. Разберем, на что обратить внимание:
1cv8.exe или 1cv8c.exe. Завершим их принудительно.1cv8.1cl (файл блокировки) и 1cv8.cdn, если они существуют в момент, когда в программе никого нет.В новых версиях платформы (8.3.27 и выше) 1С стала более требовательна к безопасности. Посмотрим на возможные ограничения со стороны ОС:
%TEMP%. Если у пользователя Windows ограничены права на запуск исполняемых файлов из этой папки (политики AppLocker или Software Restriction Policies), скрипт бэкапа не запустится.mshta.exe, так как этот инструмент нередко используется вирусами для запуска вредоносных скриптов. Попробуем временно отключить защиту и запустить бэкап.Опытные системные администраторы часто отказываются от встроенного в 1С механизма «бэкапа одной кнопкой» в пользу внешних скриптов. Это надежнее, так как исключает зависимость от капризного компонента mshta.exe. Рассмотрим создание простого cmd-файла (батника) для резервного копирования файловой базы:
@echo off
set "base_path=C:\1C_Bases\Accounting"
set "backup_path=D:\Backups\1C"
set "timestamp=%date:~6,4%-%date:~3,2%-%date:~0,2%_%time:~0,2%-%time:~3,2%"
set "timestamp=%timestamp: =0%"
:: Убиваем процессы 1С для чистого копирования (опционально)
taskkill /f /im 1cv8.exe /im 1cv8c.exe
:: Копируем основной файл базы данных
copy /y "%base_path%\1cv8.cd" "%backup_path%\backup_%timestamp%.cd"
:: Сжимаем архиватором (например, 7-Zip), если установлен
"C:\Program Files\7-Zip\7z.exe" a "%backup_path%\backup_%timestamp%.7z" "%backup_path%\backup_%timestamp%.cd"
del "%backup_path%\backup_%timestamp%.cd"
echo Резервное копирование завершено!
pause
Преимущество такого подхода в том, что вы можете добавить этот скрипт в Планировщик задач Windows и выполнять копирование в ночное время без участия пользователя.
Подводя итог, если в вашей 1С перестал работать ручной бэкап, первым делом проверьте наличие mshta.exe в папке SysWOW64 и настройки ассоциаций .hta. Если это не помогло, проанализируйте активные фоновые процессы. Однако для обеспечения максимальной надежности мы рекомендуем настроить внешнее копирование файла 1cv8.cd средствами операционной системы или специализированного ПО для резервного копирования.