Как настроить скрытную архивацию баз 1С без появления окон для пользователя?

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

При автоматизации резервного копирования баз 1С с помощью пакетных файлов (.bat) часто возникает проблема: при запуске скрипта на экране пользователя появляется окно консоли, которое мешает работе и пугает сотрудников. Давайте разберем, как избавиться от этих окон и настроить процесс архивации «в фоне».

Выбор правильного инструмента

Первое, на что стоит обратить внимание — это выбор исполняемого файла архиватора. Если вы используете 7-Zip, ни в коем случае не используйте 7zG.exe, так как это GUI-модуль, предназначенный для графического интерфейса, который всегда будет пытаться показать окно. Вам необходимо использовать консольную версию — 7z.exe.

Аналогично, если вы используете WinRAR, для работы в пакетном режиме следует обращаться к rar.exe, а не к графическому интерфейсу программы.

Настройка пакетного файла (BAT)

Чтобы минимизировать визуальные эффекты и обеспечить корректную работу скрипта, следуйте этим шагам:

  1. В начале вашего bat-файла обязательно пропишите @echo off — это отключит отображение выполняемых команд в консоли.
  2. Используйте переменные для путей, чтобы код был читаемым и удобным в поддержке.
  3. Если вы используете rar.exe, добавьте ключ -IBCK. Этот параметр переводит процесс архивации в системный трей, минимизируя визуальное присутствие программы.

Пример оптимизированного вызова для 7-Zip:


@echo off
set ARC="C:\Program Files\7-Zip\7z.exe"
set TARGET="D:\Базы1С\ЗУП\1Cv8.1CD"
set DESTINATION="d:\Backup\Архив_%DATE%.7z"
%ARC% a -mx=9 -ssw %DESTINATION% %TARGET%

Как избежать зависания при архивации 1С

Если вы выполняете архивацию через Конфигуратор 1С (создание файла .dt), крайне важно учитывать поведение платформы начиная с версии 8.3.17. Если в базе есть активные пользователи, 1С может выдать диалоговое окно с предупреждением, которое «повесит» ваш скрипт, так как он будет ожидать ответа пользователя в невидимом режиме.

Чтобы этого избежать, обязательно дополните строку запуска 1С ключами /DisableStartupMessages и /DisableStartupDialogs.

Пример корректного запуска выгрузки:


"C:\Program Files\1cv8\bin\1cv8.exe" CONFIG /S "Server\Base" /N"User" /P"Pass" /DumpIB "D:\Backup\Base.dt" /DisableStartupMessages /DisableStartupDialogs

Использование системных переменных

Чтобы не прописывать полные пути к архиваторам в каждом скрипте, вы можете добавить путь к папке с программой в системную переменную PATH. После этого вы сможете вызывать 7z.exe или rar.exe из любого места. Однако помните, что в пакетных файлах всегда надежнее использовать полные пути, чтобы избежать конфликтов версий или проблем с правами доступа.

Рекомендации по автоматизации

Рассмотрим дополнительные советы для стабильной работы:

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

← На главную