Меню Рубрики

Установка exe в автоматическом режиме

Типы инсталляторов и их ключи для тихой установки

Здравствуйте, дорогие читатели.
Сегодня, как и обещал вам, расскажу о самых популярных инструментах, создающих инсталляторы программ.
Многие из них весьма просты, так что могут использоваться не только программистами и производителями ПО, но и теми, кто захочет собрать инсталлятор своими руками.
Однако сборка установочных пакетов не тема данной статьи, тема моей статьи: какие основные ключи поддерживают те или иные инсталляторы, как их использовать и как определить, какой инсталлятор используется для той или иной программы.

InstallShield

Начну пожалуй с самой объёмной, самой любимой крупными коммерческими разработчиками По. InstallShield — это мощный профессиональный инструмент создания надежных инсталляционных пакетов.

С помощью Project Assistant разработчик шаг за шагом проходит все этапы создания инсталлятора. Никакого обучения не требуется, все основные возможности InstallShield X Express возможно узнать в течении менее одного дня. Полная интеграция со средой разработки Visual Studio .NET, поддержка .NET, Linux, Web services и приложений для мобильных устройств.

Встретить его можно очень часто в платных продуктах, например:

Как правило такие инсталляторы не вызывают сложностей, достаточно их запустить с ключом “S”, и программа будет установлена в тихом режиме.
Примечание: Если параметр “wait” не отрабатывает, пробуйте использовать ключ “SMS”
Пример:

Start /wait setup.exe /s /sms

Как определить, что использовался Install Shield для упаковки инсталлятора

Открываем свойства файла, на вкладке «Подробно» в пунктах «Описание» и «Исходное имя файла» как правило будет указано значение «setup.exe”, а в «Название продукта»: «InstallShield».
К тому же запустив такой инсталлятор для обычной установки, как правило вы встретите такие слова:
InstallShield Wizard
Вас приветствует программа InstallShield Wizard для xxxxxxx
Программа InstallShield(R) Wizard установит и т.д.

Естественно, это всё может быть написано и по-английски.

Windows Installer Service (*.msi)

Ну что же об этом сказать… Технология Windows Installer Service (MSI) является стандартом де-факто в мире системных администраторов, занимающихся распространением и поддержкой ПО для десктопных и серверных версий Windows. Формат MSI поддерживается всеми крупными системами управления конфигурациями (Microsoft SCCM, CA Unicenter и многими другими), а для некоторых систем распространения ПО — является даже единственным поддерживаемым форматом.

Все инсталляторы, запакованные с помощью Windows Installer, имеют расширение “*.msi”.
Примеры программ:

Этот тип инсталляторов поддерживает следующие ключи для тихой установки:
«qb» и «QN».
При использовании ключа «QB» будет отображён ход установки, однако никаких вопросов пользователю задано не будет, также и не будет отображаться кнопка «Cancel (Отмена)».
Пример:

Start setup.msi /qb

Следующий ключ: “qn”
При использовании данного ключа будет полностью скрыт процесс установки. Прогресс установки также отображаться не будет.
Пример:

Start setup.msi /qn

Следует заметить, что некоторые программы после установки требуют перезагрузки компьютера. Чтобы этого избежать используйте свойства (REBOOT=ReallySuppress) заключив его в ковычки вместе с ключом.
Пример:

Start setup.msi «/qb REBOOT=ReallySuppress»

Использование InstallShield расширения *.msi

Начиная с версии 7, InstallShield может создавать файлы с расширением «*.msi». они в свою очередь могут быть отдельными файлами и в связке с setup.exe,
Например как OBI
Вторые в свою очередь бывают двух типов:
«InstallScript MSI» и «Basic MSI». InstallScript MSI использует традиционные ключи InstallShield. Basic MSI — отдельная интересная история.
Чтобы автоматически установить приложение, использующее Basic MSI, вам нужно указать ключи «/s /v»…»». Многоточие нужно заменить на ключи, которые необходимо передать непосредственно Windows Installer (msiexec). Иными словами, если вы хотите установить приложение абсолютно незаметно и избежать перезагрузки, то используйте такую команду

Start setup.exe /s /v»/qn REBOOT=ReallySuppress»

Автономный установщик обновлений Windows *.msu

В связи с тем, что данная информация часто требуется, отредактировал статью :-), добавив в неё также и ключи для *.msu.
msu — это автономные установщики обновлений Windows. Однажды скачав обновления, их можно установить даже без наличия интернета и повторно их качать не придётся.
Все эти установщики имеют расширение *.msu и поддерживают следующие ключи командной строки.

/quiet — тихий режим без взаимодействия с пользователем. Все окна будут скрыты. Если после обновления понадобиться перезагрузка, то она будет произведена.

/norestart — Используйте этот ключ вместе с quiet, чтобы избежать перезагрузки.

/warnrestart — При использовании с quiet предупредит о том, что будет произведена перезагрузка.

Читайте также:  Установка бойлера в подвале

/promptrestart — при использовании с quiet появится вопрос о перезагрузке компьютера.

/forcerestart — При использовании с quiet будет выполнена так называемая форсированная перезагрузка т.е., все приложения будут принудительно закрыты и компьютер перезагрузится.

/log — Задаёт ведение лога и путь к лог файлу.

Пример:

start c:\updates\kb3456246.msu /quiet /norestart /log:update.log

Inno Setup

Отличный, бесплатный инструмент для создания инсталляторов, поддерживающий скрипты на языке PASCAL, достаточно прост в освоении и удобен для использования.
Inno setup умеет регистрировать библиотеки и ActiveX компоненты, Создавать шифрованные инсталляторы, изменять реестр, а также запускать внешние приложения, но это лишь малая часть того, что умеет Inno Setup, даже слишком малая….
Следует заметить, что справочная система достаточно хорошо написана и подкреплена многочисленными примерами.

Inno Setup не уступает многим системам создания инсталляторов, а некоторые по удобству и возможностям оставляет далеко позади, хотя и является бесплатными по правде говоря, он мне нравиться больше всех перечисленных в этой статье, многократно меня выручавший.

Inno Setup последнее время всё чаще и чаще используют для создания инсталляционных пакетов, не только разработчики бесплатных программ, но и коммерческих продуктов, например:

Хм, что это я расписался, буду о главном.

Inno Setup поддерживает два основных ключа для тихой установки, это «SILENT” и “VERYSILENT”.
Пример:

Start setup.exe /verysilent
Start setup.exe /silent

Иногда возникает небольшая проблемка: вылазит окошко с вопросом хотите ли вы продолжить установку. Чтобы скрыть это окно, используйте ключ “SP-“.
Пример:

Start setup.exe /VERYSILENT /SP-

Как узнать, используется ли Inno Setup для упаковки программы?

Запустите инсталлятор, в открывшемся окне откройте меню система ( ALT + SPACE»Пробел»)
Выберите пункт «ABOUT Setup» или «О программе»,
Откроется окошко примерно с таким текстом:
About Setup
Inno Setup version 5.4.0 (a)Copyright (C) 1997-2010 Jordan RussellPortions Copyright (C) 2000-2010 Martijn LaanAll rights reserved.Inno Setup home page:http://www.innosetup.com/RemObjects Pascal Script home page:http://www.remobjects.com/psInno Setup Preprocessor home page:http://ispp.sourceforge.net/
ОК

Nullsoft Scriptable Install System (NSIS)

Nullsoft Scriptable Install System (NSIS) — программа предназначена для легкого и быстрого создания профессиональных инсталляционных пакетов. Программа позволяет разработчикам ПО создавать сжатый win32 exe-файл, с возможностью проверки его целостности. Не имеет ограничения на количество входящих в состав дистрибутива файлов. Поддерживается функция Uninstall. Встроенная собственная виртуальная машина превращает этот продукт в полноценный профессиональный инструмент.
Примеры:

Инсталляторы, созданные с помощью бесплатного NSIS, запускаются с ключом “S”.
Пример:

start setup.exe /S

Будьте внимательны, ключ должен быть в верхнем регистре, иначе он может просто не сработать.
Для указания директории установки можно использовать ключ “D”.
Пример:

Start setup.exe /S /D=c:\myprogram

Как определить использование NSIS

У всех инсталляторов, созданных с помощью NSIS очень схожий интерфейс, изучите внимательно процесс установки программы Winamp, и вы сможете без труда определить используется ли NSIS.

WISE Installer

Покопавшись в интернете вот какое красивое описание я нашёл для него:
Wise for Windows Installer позволяет профессиональным разработчикам быстро создавать надежные пакеты .MicrosoftI с использованием новейших технологий Windows Installer корпорации Microsoft. Уникальные функции Wise for Windows Installer помогают как небольшим, так и крупным командам разработчиков создавать установочные пакеты для любых типов платформ, включая рабочие станции и карманные компьютеры, серверы приложений и web, а также мобильные устройства Windows Mobile, Windows CE, Pocket PC, Microsoft .NET Compact Framework, Palm OS и смартфоны.

Программа Wise Installation Studio позволит без особых усилий создавать инсталляционные пакеты приложений для операционной системы Windows Vista, 64-битных версий Windows и мобильной платформы Windows Mobile 5. Данный пакет поддерживает формат Windows Installer (MicrosoftI), а также имеет и собственный формат — WiseScript (.EXE).

Пользователи также смогут по достоинству оценить преимущества инновационной технологии Altiris Software Virtualization Solution, внедрённой в Wise Installation Studio, которая позволяет создавать виртуальные архивы приложений (.VSA) и гарантирует полное отсутствие конфликтов между устанавливаемыми продуктами.

Кроме того, новая версия Wise Installation Studio интегрируется с производимым компанией Nalpeiron пакетом PRO-Tector Standard. Это решение позволяет разработчикам создавать испытательные версии программных продуктов и обеспечивает надёжную защиту интеллектуальной собственности от незаконного использования.

Только вот ведь незадача, похоже проект умер…
ну да ладно, не будем о грустном…

источник

Сделай это по быстрому: установка софта в автоматическом режиме

Большинство системных
администраторов знают, как можно быстро
установить/переустановить Windows. Для этих
целей существуют программы, позволяющие
сделать точный образ установленной Windows
вместе со всеми установленными
приложениями, драйверами и т.п. Достаточно
переписать этим образом системный раздел и
вот на машине установлена полностью
готовая к работе Windows. Этим занимаются такие
программы как Acronis TrueImage, PowerQuest DeployCenter, Norton
Ghost. С появлением Windows XP появилась также
возможность автоматически установить всю
Windows без вопросов про имя пользователя, ключ
продукта, временные, региональные
настройки и т.п. В ходе установки можно
автоматически установить любые приложения,
ключи реестра, обновленные драйвера. В
английском языке этот процесс называется
“unattended installation”, что по-русски означает “автоматическая
установка». Так что в плане полной
переустановки Windows у системных
администраторов проблем стало меньше. Вся
установка заключается только в том, чтобы
вставить специальный диск в привод
пользователя. А вот как быть если надо на
установленную Windows нужно поставить какое-нибудь
приложение? Софт для бухгалтера, юриста,
инженера? Тут администратор честно идет к
пользователю, честно жмет кнопки, отвечает,
что Да, он согласен с лицензионным
соглашением, вводит ручками серийник и ждет
появления кнопки Finish. Проделывать такую
работу больше чем на одном компьютере —
занятие неблагодарное. Но, к счастью, и
здесь есть незаменимые помощники. О них и
пойдет речь.

Читайте также:  Установка передних проставок шевроле авео

Помочь администратору могут сами
инсталляторы программ. Большинство из них
имеют специальные ключи, с помощью которых
можно запустить автоматическую установку
программы. Наиболее часто используются
следующие типы инсталляторов:

  1. InstallShield
  2. Windows Installer Service (*.msi)
  3. InstallShield с MSI
  4. Inno Setup
  5. Nullsoft SuperPiMP Install System (NSIS)
  6. WISE Installer

Список инсталляторов, конечно,
неполный, охватить все просто невозможно.

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

Наличие файла setup.iss в
директории;
В свойствах установочного файла (который,
кстати, всегда называется setup.exe) будет
что-то типа «InstallShield (R) Setup Launcher».

Название инсталлятора Запуск с ключом Как распознать
InstallShield setup.exe /s /sms
Windows Installer Service (*.msi) setup.msi «/qn REBOOT=ReallySuppress» Расширение *.MSI
InstallShield c MSI setup.exe /s /v «/qn REBOOT=ReallySuppress» Приложения могут быть в виде
отдельных MSI файлов или поставляться с
установщиком setup.exe.
Inno Setup setup.exe /VERYSILENT /SP- При запуске инсталлятора в
самом первом окне кликните на иконку в
левом верхнем углу и выберите пункт About
Setup из меню.
Nullsoft SuperPiMP Install System (NSIS) Setup.exe /S Внизу инсталлятора надпись
Nullsoft Install System
WISE Installer Setup.exe /s Надпись на первом окне
инсталлятора Initializing Wise Installation Wizard

Несколько комментариев к таблице.

    Для Windows Installer можно задавать ключи /qb или
    /qn. Первый покажет прогресс установки, а
    второй полностью скроет все окна и
    незаметно установит приложение. Если вы
    хотите отобразить прогресс установки, но
    не показывать кнопку Cancel, исключая
    возможность прерывания установки
    пользователем, то используйте ключ /qb!.
    Некоторые приложения требуют
    перезагрузки компьютера после установки.
    Чтобы этого избежать используйте
    свойство REBOOT=ReallySuppress вместе с /qn или /qb,
    заключая все выражение в кавычки.

InstallShield с MSI могут быть двух типов: «InstallScript
MSI» и «Basic MSI». InstallScript MSI использует
традиционные ключи InstallShield. В табличке
приведены ключи для Basic MSI. Обратите
внимание, что ключ /v и кавычки пишутся
слитно.

  • Регистр ключей имеет значение, то есть /S
    и /s — не одно и то же.
  • Для других типов инсталляторов
    иногда о ключах можно узнать, запустив
    программу с ключом /? или /help.

    Отдельный разговор если
    инсталлятор при установке требует ввод
    серийного номера. Например, Nero Burning Rom может
    быть автоматически установлен следующей
    командой:

    nero6303.exe /silent /noreboot /no_ui /sn=xxxx-xxxx-xxxx-xxxx-xxxx-xxxx /write_sn

    Можно также создать
    регистрационный файл, который будет
    вносить регистрационные данные прямо в
    реестр. Пример файла regnero.reg:

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SOFTWARE\Ahead\Nero — Burning Rom\Info]
    «User»=»InsertName»
    «Company»=»InsertCompanyName»
    «Serial5″=»InsertSerial»

    Для Nero 6-й версии последняя строка
    должна быть такой:

    Тогда перед автоустановкой вы
    можете сначала запустить регистрационный
    файл, а потом уже автоустановку с ключами. Понятно, что от такой
    автоматизации мало толку без командных
    файлов. Например, создайте файл autosetup.cmd

    ECHO Installing Nero Burning Rom
    ECHO Please wait.
    REGEDIT /S D:\Install\regnero.reg
    start /wait D:\Install\Nero551054.exe /silent /noreboot /no_ui
    Где D — буква привода (универсальной
    переменной типа %CDROM%, к сожалению, нету).

    Читайте также:  Установка датчика давления масла на нексию

    Ключ /wait команды start позволит
    дождаться окончания процесса установки.
    Это необходимо, чтобы не запускалось сразу
    несколько процессов инсталляции. В командный
    файл можете записать команды
    для автоустановки всех необходимых
    приложений.

    Таким образом, вы можете записать
    все инсталляторы и командный файл autosetup.cmd
    на диск и запускать автоустановку через
    него. Можно также бросить в корень диска
    файл autorun.inf:

    Тогда командный файл запустит
    автоустановку сразу при вставке диска в
    привод.

    Если с ключами вам работать не
    нравится, кажется сложным, или если вы не
    смогли подобрать ключи для автоматической
    установки, то можете попробовать программы
    эмулирующие действия пользователя при «нормальной»
    установке приложения. Общий смысл работы программ
    такого типа в следующем. Инсталлятор
    запускается в обычном режиме без ключей, а
    все действия, такие как нажатие кнопок, ввод
    серийных номеров, расстановка флажков,
    происходят в режиме эмуляции действий
    пользователя. В результате вы увидите окно
    инсталлятора в котором сами нажимаются
    кнопки, снимаются/ставятся флажки, вводятся
    серийные номера и т.п. К программам такого рода
    относятся: AutoIt и LazySetupCD.

    Для AutoIt вы должны писать скрипты
    на специальном скриптовом языке. Например, для установки
    программы LazySetupCD скрипт будет такой:

    //запуск установки из директории c:\temp
    Run, c:\temp\LazySetupCD\setup.exe
    //дождемся появления нужного окна
    WinWaitActive, Лицензионное соглашение
    //нажмем Да, т.е. отправим нажатие Enter
    Send,
    //дождемся появления следующего окна
    WinWaitActive, LazySetupCD v.1.1
    //нажмем OK
    Send,
    //завершение
    Exit

    По адресу http://www.msfn.org/board/index.php?showtopic=20197
    вы можете скачать готовые скрипты для
    автоматической установки программ через
    AutoIt. Написание скриптов для AutoIt
    задача нетривиальная — надо изучать
    синтаксис и операторы скриптового языка.
    Интерфейс и справка программы англоязычная,
    что тоже не относится к плюсам для
    русскоязычных пользователей.

    Программа LazySetupCD (autosetup.org.ru) от
    этих недостатков избавлена. Эта программа позволяет вам
    создавать установочные диски, с которых вы
    сможете устанавливать приложения в
    автоматическом режиме, т.е. без участия
    пользователя, по заранее заданному
    алгоритму. Для составления алгоритма
    установки какой-нибудь программы вам
    необходимо указать все действия, которые
    должен эмулировать LazySetupCD при установке. К
    таким действиям относятся:

    1. Нажать кнопку
    2. Поставить/снять флажок
    3. Установить переключатель
    4. Ввести текст

    Этих действий вполне достаточно, чтобы
    составить алгоритмы установки для
    большинства программ. Составление
    алгоритма осуществляется через интерфейс
    LazySetupCD, никаких скриптов писать не придется.
    Кнопки, флажки и переключатели
    идентифицируются по их названию. То есть,
    если вы хотите чтобы LazySetupCD три раза подряд
    нажал кнопку Next при установке какой-нибудь
    программы, то вам достаточно три раза
    добавить действие «Нажать кнопку Next». В AutoIt для того чтобы
    запрограммировать подряд три нажатия
    кнопки с одним названием, вам приходилось
    указывать признак окна, в котором
    располагается кнопка. LazySetupCD в отличие от
    AutoIt не путается в нажатиях и долбить три
    раза одну и ту же кнопку не станет. Для ввода текста (например,
    серийного номера) вам тоже не придется
    ничего дополнительно указывать. Если после
    очередного нажатия кнопки Далее вам будет
    предложено ввести имя пользователя и
    серийный номер, то в LazySetupCD вам достаточно
    будет задать действие «Ввести текст». Каждый
    текстовый фрагмент будет вводиться в
    порядке табуляции в окне инсталлятора. С помощью LazySetupCD вы сможете
    записать инсталляторы вместе с алгоритмами
    установки сразу на диск. Вместе с LazySetupCD
    поставляется модуль autorun.exe, который
    записывается на диск и который будет
    проводить автоустановку. С его помощью вы
    сможете выбрать программы, которые хотите
    установить в автоматическом режиме. Для LazySetupCD также есть набор
    готовых скриптов автоустановки, которые вы
    можете скачать с сайта autosetup.org.ru.

    Итак мы рассмотрели три возможных
    метода автоматической установки программ:

    1. С помощью ключей и командных файлов
    2. С помощью AutoIt
    3. С помощью LazySetupCD

    Самым быстрым методом,
    безусловно, является метод установки через
    ключи и командные файлы, т.к. в этом случае
    не появляется окон установки и не
    расходуется время на их отрисовку. Однако,
    по этому методу не всегда удается достичь
    желаемого результата (например, не удастся
    подобрать нужные ключи автоустановки).
    Тогда на помощь приходят эмуляторы
    действий пользователя — AutoIt и LazySetupCD. Чтобы
    эффективно начать использовать AutoIt
    придется потратить время на изучение
    синтаксиса специального скриптового языка.
    LazySetupCD предоставляет более простой и
    удобный интерфейс для составления
    алгоритма установки.

    Чем пользоваться — решать вам.

    При подготовке материала
    использовались данные сайтов:

    источник