Перейти к основному содержимому

Тихая установка продуктов ZennoLab (аргументы запуска инсталлера)

🔗 Оригинальная страница — Источник данного материала


Зачем это нужно?

C помощью выполнения команд со специальными аргументами в консоли, вы можете автоматически устанавливать и обновлять продукты ZennoLab.

В частности, это может быть полезно, когда вы администрируете несколько серверов с продуктами ZennoLab.

Примеры для командной строки Windows

Следующая команда устанавливает ZennoPoster на текущем компьютере (или обновляет, если найдена более старая версия).

Автоматическая установка (с показом UI):

start /wait ZennoPosterPro-RU-v7.5.1.0.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/"

Где ZennoPosterPro-RU-v7.5.1.0.exe - название билда, который вы хотите установить.

Тихая установка (без отображения UI):

start /wait ZennoPosterPro-RU-v7.5.1.0.exe --silent --hidden --accept-license-agreement="https://zennolab.com/terms-of-service/"

Этот код вы можете сохранить и выполнить в составе .bat - файла.

Информация

Больше примеров с разными аргументами можно найти в конце этой статьи

Пример на PowerShell

Бывают случаи, когда нужно удаленно администрировать компьютеры для установки/обновления ZennoPoster. Для этого:

  1. Подключитесь к удаленному компьютеру по SSH
  2. Выполните скрипт на PowerShell
$pathToInstaller = "C:\Work\ZennoPosterPro-RU-v7.5.1.0.exe" #Путь к билду, который хотите запустить
$installerArguments = "--silent --accept-license-agreement=https://zennolab.com/terms-of-service/" #Аргументы командной строки установщика

Start-Process -Wait -FilePath "$pathToInstaller" -ArgumentList "$installerArguments"

Подробное описание команд и аргументов

Внимание

Общие требования к запуску автоматической установки:Все аргументы должны быть заданы начиная с двойного тире и разделены пробеламиЗначения аргументов необходимо экранировать двойными кавычками. Перед командой запуска программы установки необходимо добавить команды "start /wait". Это необходимо для корректного вывода ошибок и ожидания консолью завершения установки.

Обязательные аргументы

Имя аргументаЗначение аргументаОписаниеЛогика
--silentНе требуетсяОбязательный флаг, включающий режим тихой установки-
--accept-license-agreement="https://zennolab.com/terms-of-service/"Флаг принятия лицензионного соглашения.При несоответствии ссылки либо отсутствии флага установщик будет ожидать ручного принятия лицензии.
--installType="""Default" либо отсутствие аргументаСтандартный тип установки• Нет других версий - установка
• Есть такая-же версия - переустановка
• Есть только одна другая версия - обновление
• Есть две и более других версий - ошибка
"UpdateOldest"Обновление самой старой версии либо стандартная установка• Нет других версий - установка
• Есть такая-же версия - переустановка
• Есть другие версии - обновление наиболее старой
"StandAlone"Отдельно стоящая установка• Есть такая-же версия - переустановка
• Во всех остальных случаях - установка
"UpdateByVersion"Обновление заданной версии.

Предполагает наличие аргумента --updateVersion="X.X.X.X", где X.X.X.X - версия продукта, которую необходимо обновить
• Есть обновляемая версия - обновление до устанавливаемой
• Есть такая-же версия - переустановка
• Нет обновляемой версии - ошибка
Информация

В одном из аргументов запуска, описываемых далее, в качестве значения используется id лицензии продукта. Узнать его можно в личном кабинете пользователя в разделе оборудование, а также для установленных продуктов через реестр.Пример получения SaleID через cmd для ZennoPoster Pro V7 v. 7.3.1.0:reg query "HKCU\SOFTWARE\ZennoLab\RU\ZennoPoster Pro V7\7.3.1.0" /v SaleID

Необязательные аргументы

Имя аргументаЗначениеЛогика
--hiddenНе требуетсяФлаг тихой установки. Отключает отображение UI установщика и скрывает его из панели задач. Несовместим с флагом --waitUserAction.
--loginЛогин и пароль пользователя, от имени которого необходимо произвести установку.При наличии лишь одного из аргументов логина и пароля, второй аргумент будет сброшен.
--passwordПо умолчанию используются данные для авторизации из системного реестра.
--saleIDID лицензии, используемый при установке и поиске установленных продуктов.При всех типах установки на шаге выбора лицензии будет выбрана лицензия с переданным SaleID.

При типах установки "Default" и "UpdateByVersion" на шаге выбора действия установки при поиске установленных продуктов будут отбираться только продукты с заданным SaleID.
--installPathПуть для установкиПродукт будет установлен по заданному аргументом пути.

Применяется также при переустановке со стандартной директории и обновлении.
--waitUserActionНе требуетсяФлаг ожидания действий пользователя. Вместо завершения процесса при какой-либо ошибке установщик будет ожидать действий пользователя и продолжит автоматическую установку после успешного перехода на следующую страницу.
--activateHardwaretrue или falseФлаг активации лицензии на компьютер. По умолчанию значение true. При установлении значения false будет работать ProjectMaker, но не будет работать ZennoPoster.

Таблица сопоставления типов автоматической установки и причин поведения

Значение аргумента installTypeУстановкаОбновлениеПереустановкаОшибка
"Default"Нет других версийЕсть одна другая версияТакая версия уже установленаЕсть две и более версий
"Default" с аргументом --saleIDНет других версий с таким SaleIDЕсть одна другая версия с таким SaleIDТакая версия уже установлена, независимо от SaleID *Есть две и более версий с таким SaleID
"StandAlone"*Стандартная логика-Такая версия уже установлена-
"UpdateOldest"Нет других версийЕсть другие версии - обновляем самую старуюТакая версия уже установлена-
"UpdateOldest" с аргументом --saleIDНет других версий с таким SaleIDЕсть другие версии с таким SaleID - обновляем самую старуюТакая версия уже установлена, независимо от SaleID *-
"UpdateByVersion"*-Продукт заданной версии установлен - обновляем егоТакая версия уже установленаПродукт заданной версии не установлен

* Аргумент --saleID может быть использован только для выбора лицензии, т.к. на одном компьютере не может быть установлено две одинаковые версии на одну лицензию.

Примеры

Примеры

Команда запускаПоведение установщика
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --hidden• Тип автоматической установки "Default"
• Данные для авторизации - из реестра
• Поиск среди установленных продуктов - по всем
• Выбор лицензии - свободный
• Путь установки - по умолчанию
• При возникновении ошибки - завершение процесса
• Тихая установка - без отображения UI установщика
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --saleID="SALE_ID"• Тип автоматической установки "Default"
• Данные для авторизации - из реестра
• Поиск среди установленных продуктов - по SaleID
• Выбор лицензии - SaleID
• Путь установки - по умолчанию
• При возникновении ошибки - завершение процесса
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --installType="StandAlone" --login="userareaLogin" --password="userareaPassword" --saleID="SALE_ID" --installPath="D:/ZennoLab/" --waitUserAction• Тип автоматической установки "StandAlone"
• Данные для авторизации - заданные в аргументах
• Поиск среди установленных продуктов - по всем
• Выбор лицензии - SaleID
• Путь установки - "D:/ZennoLab/"
• При возникновении ошибки - ожидание действий пользователя
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --installType="UpdateOldest" --login="userareaLogin" --password="userareaPassword"• Тип автоматической установки "UpdateOldest"
• Данные для авторизации - из реестра
• Поиск среди установленных продуктов - по всем
• Выбор лицензии - SaleID
• Путь установки - по умолчанию
• При возникновении ошибки - завершение процесса
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --installType="UpdateOldest" --login="userareaLogin" --password="userareaPassword" --saleID="SALE_ID" --installPath="D:/ZennoLab/" --waitUserAction• Тип автоматической установки "UpdateOldest"
• Данные для авторизации - заданные в аргументах
• Поиск среди установленных продуктов - по SaleID
• Выбор лицензии - SaleID
• Путь установки - "D:/ZennoLab/"
• При возникновении ошибки - ожидание действий пользователя
start /wait Installer.exe --silent --accept-license-agreement="https://zennolab.com/terms-of-service/" --installType="UpdateByVersion" --updateVersion="X.X.X.X" --login="userareaLogin" --password="userareaPassword" --saleID="SALE_ID" --installPath="D:/ZennoLab/"• Тип автоматической установки "UpdateByVersion"
• Данные для авторизации - заданные в аргументах
• Поиск среди установленных продуктов - по версии, несмотря на SaleID
• Выбор лицензии - SaleID
• Путь установки - "D:/ZennoLab/"
• При возникновении ошибки - завершение процесса