Ключи командной строки 1С 8.3: какие бывают и как ими пользоваться
Содержание
Параметры запуска 1С:Предприятие задаются ключами командной строки исполняемого файла 1cv8.exe (толстый клиент и конфигуратор) или 1cv8c.exe (тонкий клиент). Первым идёт режим — ENTERPRISE, DESIGNER или CREATEINFOBASE, затем ключи вида /F, /S, /N, /P и другие. Пример: 1cv8.exe ENTERPRISE /F"D:\Base\Buh" /N"Иванов" /P"123".
Ключи можно прописать в ярлыке Windows, в bat-файле, в планировщике заданий или прямо в списке баз: при редактировании информационной базы на последней странице мастера есть поле «Дополнительные параметры запуска». Всё, что ниже, относится к платформе 8.3 и не зависит от конфигурации — БП, ЗУП и УТ запускаются одинаково.
Как устроена строка запуска и базовые режимы
Общая схема строки:
"<путь к 1cv8.exe>" <РЕЖИМ> <параметры подключения> <пользователь> <дополнительные ключи>
Порядок ключей после режима не важен. Регистр букв в именах ключей тоже. Значения с пробелами берите в двойные кавычки.
Режимы запуска
| Режим | Что запускает | Типичная задача |
|---|---|---|
ENTERPRISE | Пользовательский режим 1С:Предприятие | Ежедневная работа, запуск обработки |
DESIGNER | Конфигуратор | Выгрузка базы, обновление, пакетные операции |
CREATEINFOBASE | Создание новой информационной базы | Развёртывание пустой базы или базы из шаблона |
Если режим не указан, открывается окно выбора базы, как при обычном двойном клике по ярлыку.
Каким файлом запускать
- 🚀
C:\Program Files\1cv8\common\1cestart.exe— стартер. Сам выбирает нужную версию платформы для базы. Удобен для ярлыков пользователей. - 🧱
C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe— конкретная версия платформы. Толстый клиент и конфигуратор. Для скриптов администратора берите именно его: так результат не зависит от того, что установлено на машине последним. - 🪶
...\bin\1cv8c.exe— тонкий клиент. Конфигуратор им не открыть, режимDESIGNERтут не работает .
Подключение к базе
| Ключ | Назначение | Пример |
|---|---|---|
/F | Файловая база, путь к каталогу | /F"D:\Base\Buh" |
/S | Серверная база: сервер\имя базы | /S"srv1c\buh_main" |
/WS | База, опубликованная на веб-сервере | /WS"https://site.ru/buh" |
/IBName | Имя базы из списка пользователя | /IBName"Бухгалтерия ООО Ромашка" |
/IBConnectionString | Строка соединения целиком | /IBConnectionString"File=""D:\Base\Buh"";" |
Для серверной базы на нестандартном порту менеджера кластера порт пишут после имени сервера через двоеточие: /S"srv1c:2541\buh_main". Стандартный порт 1541 указывать не нужно.
Пользователь и аутентификация
- 👤
/N"Имя"— имя пользователя ровно так, как оно записано в списке пользователей базы. - 🔑
/P"пароль"— пароль. Пустой пароль можно не указывать. - 🪟
/WA+— вход по учётной записи Windows (действует по умолчанию, если у пользователя включена такая аутентификация),/WA-— запретить её и требовать имя и пароль. - 🌐
/OIDA-— отключить OpenID-аутентификацию для веб-публикации.
Пароль в ярлыке или bat-файле лежит открытым текстом. Для регламентных скриптов заведите отдельного пользователя с минимально нужными правами и закройте доступ к файлу скрипта через права NTFS.
Ключи для отладки и замера производительности
Эта группа нужна разработчику и администратору, который ищет, где тормозит база.
Подключение отладчика
- 🐞
/Debug— запустить клиент в режиме отладки. /Debug -http— использовать отладку по протоколу HTTP (через сервер отладки);-tcp— старый механизм отладки по TCP./DebuggerURL"tcp://localhost:1560"или/DebuggerURL"http://localhost:1550"— адрес отладчика, к которому подключится клиент.-attach— сразу подключиться к отладчику, а не ждать, пока к сеансу подключатся из конфигуратора.
Пример строки для отладки тонкого клиента :
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh_test" /N"Разработчик" /Debug -http -attach /DebuggerURL"http://localhost:1550"
Диагностика производительности
- 📊
/DisplayPerformance— показать окно показателей производительности: число серверных вызовов, объём переданных данных, время. - 🐢
/SimulateServerCallDelay— имитировать медленный канал. Уточняющие параметры:-Call(задержка на вызов, мс),-Sendи-Receive(задержка на каждый килобайт). Пример:/SimulateServerCallDelay -Call2000 -Send400 -Receive400. - 🛡
/EnableCheckModal— сообщать об использовании модальных окон там, где они запрещены. - 🧹
/ClearCache— очистить кэш клиента перед запуском. Помогает, когда после обновления у одного пользователя «старые» формы или странные ошибки, а у остальных всё в порядке. - 📝
/LogUI— записывать действия пользователя в интерфейсе. Пригодится, чтобы воспроизвести ошибку по шагам.
💡 Имитация задержки — честный способ проверить доработку под пользователей, которые работают через VPN или удалённый офис. На локальной машине форма с двадцатью серверными вызовами летает, а у филиала открывается по десять секунд.
Как ключами управлять интерфейсом и поведением клиента
Внешний вид и язык
- 🔤
/L"ru"— язык интерфейса платформы (кнопки, служебные окна). - 🌍
/VL"ru"— код локализации сеанса: форматы дат и чисел. - 📶
/O"Low"— режим низкой скорости соединения. Платформа меньше общается с сервером, формы открываются экономнее./O"Normal"— обычный режим. - 🧭
/DisplayAllFunctions— показать в главном меню команду «Все функции» без захода в настройки параметров.
Обычное или управляемое приложение
Для толстого клиента можно явно задать режим запуска:
/RunModeOrdinaryApplication— обычное приложение (старые формы). Нужно для конфигураций на обычных формах./RunModeManagedApplication— управляемое приложение.
В тонком клиенте обычное приложение не запускается, поэтому эти ключи имеют смысл только для 1cv8.exe.
Стартовые окна и сообщения
- 🔕
/DisableStartupMessages— не показывать стартовые предупреждения платформы, например о том, что конфигурация базы отличается от сохранённой. - 🔇
/DisableStartupDialogs— не показывать стартовые диалоги, включая окно ввода пароля. Если данных для входа не хватает, запуск завершится ошибкой, а не будет ждать человека. Это и нужно для скриптов.
Передача параметра в конфигурацию
Ключ /C передаёт произвольную строку внутрь сеанса. В коде она доступна через глобальную переменную ПараметрЗапуска:
1cv8c.exe ENTERPRISE /F"D:\Base\Buh" /C"ВыгрузитьОстатки"
В модуле приложения разработчик проверяет значение и выполняет нужное действие. Типовые конфигурации тоже понимают некоторые значения /C. Например, ЗавершитьРаботуПользователей и РазрешитьРаботуПользователей используют механизм блокировки сеансов в БСП. Точный набор поддерживаемых строк зависит от конфигурации, поэтому сверяйтесь с её документацией.
Пакетный режим конфигуратора: автоматизация без участия человека
Здесь ключи командной строки приносят больше всего пользы. Конфигуратор умеет выполнить операцию и закрыться сам — запускаете его из планировщика ночью и утром смотрите журнал.
Главные команды пакетного режима
| Ключ | Что делает |
|---|---|
/DumpIB "файл.dt" | Выгрузить информационную базу в файл .dt |
/RestoreIB "файл.dt" | Загрузить базу из .dt (текущие данные будут заменены) |
/DumpCfg "файл.cf" | Сохранить конфигурацию в файл .cf |
/LoadCfg "файл.cf" | Загрузить конфигурацию из .cf |
/UpdateCfg "файл.cf" | Обновить конфигурацию, находящуюся на поддержке |
/UpdateDBCfg | Обновить конфигурацию базы данных |
/IBCheckAndRepair | Тестирование и исправление базы |
/CheckModules | Синтаксический контроль модулей |
/DumpConfigToFiles "каталог" | Выгрузить конфигурацию в XML-файлы |
/LoadConfigFromFiles "каталог" | Загрузить конфигурацию из XML-файлов |
Для отчётности о результате используйте:
- 📄
/Out "файл.log"— записать сообщения конфигуратора в текстовый файл. С-NoTruncateфайл дописывается, а не перезаписывается. - ✅
/DumpResult "файл.txt"— записать код результата:0— успех, другое значение — ошибка.
Пример: ночная выгрузка файловой базы
@echo off
set V8="C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe"
set BASE=D:\Base\Buh
set BACKUP=E:\Backup\buh_%date:~6,4%%date:~3,2%%date:~0,2%.dt
%V8% DESIGNER /F"%BASE%" /N"Регламент" /P"пароль" /DisableStartupDialogs ^
/DumpIB "%BACKUP%" /Out "E:\Backup\dump.log" -NoTruncate /DumpResult "E:\Backup\result.txt"
findstr /x "0" "E:\Backup\result.txt" >nul || echo Выгрузка не удалась >> "E:\Backup\dump.log"
Разбор формата даты в переменной BACKUP рассчитан на русскую локаль Windows (ДД.ММ.ГГГГ). На сервере с другой локалью проверьте, что получилось в имени файла, прежде чем ставить задание в планировщик.
Для выгрузки в .dt все пользователи должны выйти из базы. Конфигуратор не сможет установить монопольный режим, пока в базе есть сеансы. Ставьте задание на время, когда никто не работает, или заранее завершайте сеансы. Для серверной базы предупредите людей: незавершённая работа в открытых документах будет потеряна.
Пример: обновление конфигурации из .cf
%V8% DESIGNER /S"srv1c\buh_main" /N"Регламент" /P"пароль" /DisableStartupDialogs ^
/UpdateCfg "D:\Updates\1Cv8.cf" /UpdateDBCfg /Out "D:\Updates\update.log"
/UpdateCfg переносит изменения в основную конфигурацию, /UpdateDBCfg применяет их к базе данных. Это два отдельных шага, и второй без первого ничего не обновит.
Перед пакетным обновлением сделайте выгрузку .dt той же командой /DumpIB. Если в конфигурации есть свои доработки, обновление в пакетном режиме может снять их без вопросов — такие базы обновляйте вручную через сравнение и объединение.
Запуск внешней обработки
/Execute "D:\Tools\Обработка.epf" открывает внешнюю обработку
сразу после запуска пользовательского режима. Так делают регламентные выгрузки: обработка в событии открытия формы выполняет действие и закрывает приложение.
1cv8.exe ENTERPRISE /F"D:\Base\Buh" /N"Регламент" /P"пароль" /DisableStartupMessages /Execute "D:\Tools\Выгрузка.epf"
Если в базе включена защита от опасных действий, при открытии внешней обработки появится предупреждение — у пользователя для регламента её нужно отключить в его карточке, иначе скрипт остановится на диалоге.
Создание базы из командной строки
1cv8.exe CREATEINFOBASE File="D:\Base\NewBuh" /UseTemplate "D:\Templates\1Cv8.cf" /AddToList "Новая бухгалтерия"
/UseTemplate принимает .cf или .dt, /AddToList добавляет базу в список пользователя под указанным именем.
Клиент-серверный вариант: ключи для серверных баз
Лицензии и регламентные задания
- 🔐
/UseHwLicenses+или/UseHwLicenses-— искать или не искать аппаратный ключ защиты при запуске. Если в организации только программные лицензии,-убирает лишний поиск ключа. - ⏰
/AllowExecuteScheduledJobs -Off— запретить выполнение регламентных заданий в этом сеансе файловой базы;-Force— разрешить принудительно. Относится к файловому варианту: в клиент-серверном регламентные задания выполняет сервер, а не клиент. - 🔓
/UC"код"— код разрешения для входа в базу, на которую установлена блокировка начала сеансов. Код задаётся при установке блокировки, в консоли кластера или в форме блокировки в самой конфигурации. - 🛡
/UsePrivilegedMode— запуск в привилегированном режиме. Работает только для пользователя с правами администратора.
Порты и путь до базы
Клиент сначала обращается к агенту сервера (порт 1540), затем к менеджеру кластера (по умолчанию 1541) и к рабочим процессам. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера.
В ключе /S указывают адрес кластера и имя базы в кластере — не имя базы в СУБД. Эти имена часто совпадают, но не обязаны: проверьте имя в консоли администрирования серверов 1С в списке информационных баз.
Веб-клиент и тонкий клиент через HTTP
Для базы, опубликованной на веб-сервере, параметры те же, только подключение через /WS. Можно добавить /WSN и /WSP — имя и пароль для аутентификации на самом веб-сервере, если она включена на публикации. Это не пользователь 1С: его по-прежнему передают через /N и /P.
Почему ключи не срабатывают: разбор ошибок
Ещё одна частая ловушка — кавычки, скопированные из мессенджера или документа Word. Вместо прямых " туда попадают «типографские», и платформа не видит границ значения. Перенабирайте кавычки вручную в обычном текстовом редакторе.
Частые вопросы
Где посмотреть полный список ключей именно для моей версии платформы?
Можно ли прописать ключи для всех пользователей сразу?
Как запустить 1С сразу в конфигураторе с ярлыка?
1cv8.exe DESIGNER /F"D:\Base\Buh". Для тонкого клиента это невозможно — конфигуратор есть только в 1cv8.exe.