Автоматизируем это... установка, настройка платформы и конфигурации 1С с помощью скриптов.

13.11.25

База данных - Администрирование СУБД

Несколько скриптов для автоматизации рутинных операций установки и настройки платформы 1С. Примеры bat-файла и vbs-скриптов для системных администраторов.

Нечасто, но все-таки случаются в серых буднях обычного системного администратора или администратора сервера 1С яркие деньки, непохожие на все прочие. Внезапно или запланированно компания покупает новый сервер для нужд 1С (да-да, и на улице 1С-ников случаются праздники). Вот теперь-то можно уже развернуться на новом железе – и платформу обновить, и SQL-сервер, и… и много еще чего! Да и обычным пользователям тоже станет комфортнее! Да, кстати, о них, об этих пользователях, на рабочих станциях ведь у нас настроено подключение на старый теперь уже сервер, да и версия платформы очень может быть тоже прежняя. А нам мечталось, что все теперь будет по-новому! Ладно, если пользователей у нас с десяток, а если их пара сотен или того больше?! Вот примерно так заканчиваются тихие будни и спокойная жизнь системных администраторов. Моя цель – помочь моим коллегам побыстрее снова вернуться в свою размеренно-привычную колею. Самое главное для любого специалиста ИТ - помнить твердое правило: любые рутинные операции могут и должны быть автоматизированы.   

Для начала разместим установочные файлы конфигурации в папку с общим доступом для любого пользователя нашей локальной сети. А для установки нужной платформы (в моем случае версии 24.1548) напишем простенький bat-файл, например, такой:

@echo off

chcp 65001

echo Внимание! устанавливается новая версия платформы 1С. Дождитесь окончания установки

msiexec /i "\\Путь к расшаренному каталогу с файлами установки 1С\8.3.24.1548_tc64\1CEnterprise 8 Thin client (x86-64).msi" /qn TRANSFORMS=adminstallrelogon.mst;1049.mst LANGUAGES=RU

echo Установлена версия платформы 1С 8.3.24.1548

Часть дела сделана! Вуаля! Остается нюанс, про который мы часто забываем – подкорректировать файл ibases.v8i, если мы перенесли кластер сервера на новый. Изменять файл вручную, как и изменять настройки кластера в окне подключения к базе 1С через кнопку «изменить» - не наш метод. Нам лень. Проще написать, к примеру, vbs-скрипт, который потом будет это делать за нас для каждой рабочей станции в нашей локальной сети.

Вместо одного сервера (сервер1) записывается другой (сервер2) по определенному условию для одной конкретной базы «БАЗА1С»:

Const ForReading = 1

Const ForWriting = 2

Const TristateUseDefault = -2

Set WshShell = WScript.CreateObject("WScript.Shell")

Set fso = CreateObject("Scripting.FileSystemObject")

Set WshShell = WScript.CreateObject("Wscript.Shell")

'Проверяем, что платформа 1С уже установлена

Set objFSO = CreateObject("Scripting.FileSystemObject")

If (objFSO.FolderExists("C:\Program Files\1cv8") Or objFSO.FolderExists("C:\Program Files (x86)\1cv8")) Then

 APPDATA = WshShell.ExpandEnvironmentStrings("%APPDATA%")

 v8i = APPDATA + "\1C\1CEStart\ibases.v8i"

 If fso.FileExists(v8i) Then

str2 = ""

        Set objFile = fso.OpenTextFile(v8i, ForReading, False, TristateUseDefaul)

                               Do While Not objFile.AtEndOfStream

                               str = objFile.ReadLine

                               i = InStr(str,"БАЗА1С")

                               If i >0 Then

                               str = Replace (str, "сервер1", "сервер2")

                               End If

                               str2 = str2 + str & vbCrLf

                               Loop

                objFile.Close

End If

fso.DeleteFile(v8i)

Set objFile = fso.OpenTextFile(v8i, ForWriting, True, TristateUseDefaul)

objFile.Write str2

objFile.Close

WScript.quit

End If

Всё получилось? Иногда на этом пути нас поджидают неожиданные препятствия, о которых мы и позабыли, или не знали. К примеру, уже написанный нами batник нужно запускать на рабочей станции под учетной записью администратора, а текущий пользователь такими правами и не обладает. Конец нашей автоматизации!? А ничего подобного. Можно исхитриться и написать скрипт vbs, который запустить нужный нам файл с правами администратора.

Проверим установлена ли на рабочей станции нужная платформа, если нет – запустим с правами администратора bat-файл из расшареной папки на сервере:

If NOT (objFSO.FolderExists("C:\Program Files\1cv8\8.3.24.1548") Or objFSO.FolderExists("C:\Program Files (x86)\1cv8\8.3.24.1548")) Then

shell.ShellExecute "cmd.exe", "/c ""\\Путь до расшаренной папки на сервере\имя файла.bat""", "", "runas", 1

End If

Ну и напоследок завершающий штрих – ярлык платформы на рабочем столе. Да его мы тоже создадим программно. В простейшем случае вот таким vbs-скриптом:

If Not objFSO.FileExists(strDesktop & "\1С 8.3.24.lnk") Then

                shortcutPath = WshShell.SpecialFolders("Desktop") & "\1С 8.3.24.lnk"

                Set shortcut = WshShell.CreateShortcut(shortcutPath)

                If objFSO.FolderExists("C:\Program Files\1cv8\8.3.24.1548") Then

                shortcut.TargetPath = "C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe"

                      shortcut.WorkingDirectory = "C:\Program Files\1cv8\common\"

                      shortcut.Description = "1C Предприятие 8.3.24"

                shortcut.Save

                End If

                If objFSO.FolderExists("C:\Program Files (x86)\1cv8\8.3.24.1548") Then

                shortcut.TargetPath = "C:\Program Files (x86)\1cv8\8.3.24.1548\bin\1cv8c.exe"

                      shortcut.WorkingDirectory = "C:\Program Files (x86)\1cv8\common\"

                      shortcut.Description = "1C Предприятие 8.3.24"

                shortcut.Save

                End If

End If

 

Конечно, мои решения не всем могут понравиться, но я уверен, что кому-то наверняка очень сильно помогут упростить и без того нелегкую жизнь простого IT-администратора.

Вступайте в нашу телеграмм-группу Инфостарт

bat-файл vbs-скрипт установка 1С автоматизация установки 1С

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

HighLoad оптимизация Администрирование СУБД Программист Россия Бесплатно (free)

Если вы работаете с 1С на PostgreSQL и жалуетесь на тормоза — скорее всего, дело в join predicate pushdown, которого в стандартном PostgreSQL нет. В MS SQL Server этот механизм работает «из коробки», и при миграции именно запросы к виртуальным таблицам 1С бьют по производительности сильнее всего. В этой статье — реальный кейс от Postgres Professional с разбором плана выполнения, ручным экспериментом и доработкой планировщика СУБД, которая ускорила запросы от 22 до 54 000 раз.

16.06.2026    3531    user2206833    9    

7

HighLoad оптимизация Администрирование СУБД Системный администратор Программист 1С:Предприятие 8 Бесплатно (free)

Вышел релиз СУБД Tantor Postgres 18, и мы хотим рассказать о его новых возможностях для работы с приложениями на платформе "1С:Предприятие". В обзоре разберем улучшения планировщика, по традиции коснемся работы временных таблиц и не обойдем вниманием вспомогательные утилиты, которые упрощают поиск и диагностику проблем в высоконагруженных системах. За каждым пунктом - реальные запросы 1С, реальные рабочие базы и сотни часов тестирования!

16.06.2026    499    Tantor    6    

7

Администрирование СУБД Системный администратор Программист 1С:Предприятие 8 Россия Бесплатно (free)

База 1С за несколько лет эксплуатации разрослась, - стала большой, медленно работает, требует много места и времени для копирования и прочего обслуживания. Нужна ли обязательно свертка или можно обойтись более «мягкими» средствами. Делюсь своим опытном как для новых конфигураций, так и для старых УПП, УТ 10…

01.06.2026    5406    2ncom    30    

9

Администрирование СУБД Системный администратор Программист Бесплатно (free)

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

20.04.2026    6818    berserg    12    

24

Администрирование СУБД Программист Бесплатно (free)

Прокачиваем Постгрес с помощью пользовательских функций и процедур.

02.03.2026    2356    SerVer1C    3    

12

HighLoad оптимизация Администрирование СУБД 1С:Предприятие 8 Бесплатно (free)

В статье рассматриваются текущие возможности горизонтального масштабирования СУБД для 1С, а также какое решение предлагает Tantor Postgres.

02.02.2026    2469    Tantor    3    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Mi11er 101 14.11.25 10:01 Сейчас в теме
Для серверов есть GPO, для клиентской части в целом тоже есть GPO
Для ярлыков ... Есть GPO )

Даже можно просто формировать файл баз и кидать на шару , меняя там конечный путь к серверу
Для отправки сообщения требуется регистрация/авторизация