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

Тихая установка продуктов 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 лицензии продукта

В одном из аргументов запуска, описываемых далее, в качестве значения используется 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/
• При возникновении ошибки - завершение процесса