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

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

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

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

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

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

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

1 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):

1 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

1 2 3 4 $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

По умолчанию используются данные для авторизации из системного реестра.

--saleID

ID лицензии, используемый при установке и поиске установленных продуктов.

При всех типах установки на шаге выбора лицензии будет выбрана лицензия с переданным SaleID.

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

--installPath

Путь для установки

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

Применяется также при переустановке со стандартной директории и обновлении.

--waitUserAction

Не требуется

Флаг ожидания действий пользователя. Вместо завершения процесса при какой-либо ошибке установщик будет ожидать действий пользователя и продолжит автоматическую установку после успешного перехода на следующую страницу.

--activateHardware

true или 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/"

  • При возникновении ошибки - завершение процесса