Озадачился на днях быстрой установкой на 200 компьютеров очередного релиза платформы 1С:Предприятие. Порыскал в интернете и как обычно, нашел много информации. И как обычно, принял к сведению, но поступил по-своему.
Основной принцип везде – использование групповых политик и создание файла трансформации с помощью редактора Orca. Попробовал я этот способ и мне не понравилось. Геморно это как-то и глючно, явно должен был быть способ попроще.
Второй вариант – жуткий скрипт на VBScript (типа из ИТС), с деинсталляцией предыдущей версии и т.п. Этот способ я тоже отверг – не люблю я Visual Basic, и потом все время возникали какие-то косяки с его удаленным запуском на моих 200 компах.
Сплавом обоих способов я и занялся, в результате оказалось все достаточно просто: для того, чтобы тихо поставить на компьютере необходимые компоненты 1С:Предприятия вообще ничего особенного не нужно. Достаточно просто в папке дистрибутива платформы запустить файл 1CEnterprise 8.2.msi с параметрами. Остальное Windows Installer сделает сам. В результате родился такой bat-файл из одной строчки:
"\\Server1S\install\1C\1CEnterprise 8.2.msi" /qr TRANSFORMS=adminstallrelogon.mst;1049.mst DESIGNERALLCLIENTS=1 THICKCLIENT=1 THINCLIENTFILE=1 THINCLIENT=1 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=0 LANGUAGES=RU
Все очень просто:
/qr – Сокращенный интерфейс. По сути, при установке пользователь увидит только бегущую полосу прогресса. Можно указать /qn и юзер вообще ничего при установке не увидит.
TRANSFORMS=adminstallrelogon.mst;1049.mst – Здесь мы подключаем рекомендованную фирмой 1С трансформацию adminstallrelogon.mst и пакет русского языка 1049.mst
DESIGNERALLCLIENTS=1 – Важный момент! Это основные компоненты 1С:Предприятия, включая компоненты для администрирования, конфигуратор и толстый клиент. Без этого параметра ставится всегда только тонкий клиент, независимо от следующего параметра
THICKCLIENT=1 – Толстый клиент
THINCLIENTFILE=1 — Тонкий клиент, файловый вариант
THINCLIENT=1 – Тонкий клиент
WEBSERVEREXT=0 – Модули расширения WEB-сервера
SERVER=0 – Сервер 1С:Предприятия
CONFREPOSSERVER=0 – Сервер хранилища конфигураций
CONVERTER77=0 – Конвертер баз 1С:Предприятия 7.7
SERVERCLIENT=0 – Администрирование сервера
LANGUAGES=RU – Язык установки – русский.
Вот и все, и никаких плясок с бубном и редакторами msi-пакетов.
Осталось только запустить эту команду на всех компьютерах конторы. Групповые политики я трогать не стал – с этой задачей прекрасно справился сервер администрирования антивируса Касперского — Kaspersky Security Center.
Спасибо за подробную статью. Но у меня не получилось средствами KSC выполнить установку.
Локально на клиенте, 1CEnterprise 8.3.msi с ключом установка проходит.
Через KSC:
1) на клиенте установлена 1с — то повторная установка через KSC проходит
2) 1с не установлена на компе — то и установка не проходит..
Может есть мысли по этому поводу?
Мыслей нет, у меня все работает. Как вариант, можно попробовать поиграться галочками в настройках задания в KSC — попробовать разные варианты установки: через агент, средствами Windows, ну и т.п.
Сам недавно 8.3 ставил — все прошло без проблем даже там, где 1С вообще не стояла…
И все же спасибо. Я кажется понял, что не так сделал. я не из батника запускал, а содавал инсталяционный пакет в ксц, с ключами. Хотя по идее тоже должно было поехать.. но нет.
Из батника запускать не обязательно. У меня так: Исполняемый файл: exec\1CEnterprise 8.msi
Параметры:
/qn TRANSFORMS=adminstallrelogon.mst;1049.mst DESIGNERALLCLIENTS=1 THICKCLIENT=1 THINCLIENTFILE=1 THINCLIENT=1 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=0 LANGUAGES=RU
При создании инсталляционного пакета надо поставить галочку «Копировать всю папку в инсталляционный пакет».
Далее в задаче для набора компьютеров стоит галочка «Средствами Microsoft Windows с помощью Сервера администрирования»
Спасиб, я с паролем намудрил. При установке, писал учетные данные админа — komp3\admin, а надо просто admin. Еще раз спасибо. Честь и хвала, тебе!
Привет. Прошел почти год, успешно пользуюсь вашим удачным решением. НО, как и следовало ожидать, количество версий, установленных на клиентах, неприлично выросло. И если раньше задача стояла установить, то сейчас наоборот. Есть ли идеи? Как подобным способом, запихнуть в установочный пакет какой нибудь Unistall с ключами?
Добрый день. Для удаленной деинсталляции я использую bat-файлик такого содержания:
msiexec /x {EF12973A-AB55-454B-947F-49F5DECD9FD7} /quiet /norestart
где {EF12973A-AB55-454B-947F-49F5DECD9FD7} — это GUID той версии 1С, которую надо удалить. Этот GUID можно взять в файле setup.ini инсталляхи 1С. Откройте файл блокнотом и найдите строку начинающуюся с «ProductCode=». Вот то, что идет после равно — это и есть GUID. Подставьте его в bat-файл, а уж сам батник можно распространить и запустить тем же Kaspersky Security Center, например, либо через PSExec
О! Благодарствую, Добрый человек. Моему счастью нет предела. 🙂 Спасибо!
По возможности, нажму кнопку «спасибо» в начале страницы 😉
StarXXX, Скажите пожалуйста, я если правильно понял, данный метод можно применить к любой программе? Как можно найти productcode в уже установленной программе. Дистрибутива естественно не осталось.
Да, вы поняли правильно, данный метод можно применить почти к любой программе, которая при установке пользуется службой установщика Windows. Чтобы найти GUID приложения придется порыться в реестре, а именно в этом разделе: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Там сосредоточена информация обо всех программах. Пройдите в этом разделе реестра по всем вложенным папкам (они называются как GUID) и ищите папку нужной вам программы. Имя программы будет в ключе DisplayName. Там же, в ключе UninstallString будет команда деинсталляции, например MsiExec.exe /I{0611B3CC-B5DB-4B93-ACE4-97B8F938E6B7}. Вот она, готовая команда, добавьте ее в бат-файл. Добавьте к ней ключи /quiet /norestart — это скроет процесс деинсталляции от пользователя и запретит перезагрузку после удаления. Если ключа UninstallString там нет, то попробуйте исользовать название папки в качестве GUID.
Все достаточно просто.
Правильно говорят, «Век живи, век учись». Пойду заполню этот пробел знаний. Спасибо!
Здоровья, Вам и Удачи.
Здравствуйте!
А у меня по ходу пьесы такой вопрос: а можно ли обойтись таким образом вместо КСН планировщиком WIN?
В принципе да, только нужно удаленно создавать на нем задачу
Привет из 2019 =) Юзаю прогу Total Software Deployment, на днях понадобилось установить 1С на ПК (которые не в домене) по твоей статье сделал параметры для тихой установке и вуаля, на всех ПК за короткое время установлена 1с. Спасибо =)
Привет из 2023 =) Юзаю KSC 14 , развернул на днях на удаленные машины , использовал ваши параметры))
Спасибо
Все еще актуально. Спасибо!