--- source: https://tiflohelp.ru/articles/klyuchi-tihoj-ustanovki.html author: © Евгений Поплавский, 2014 tags: - "windows" --- ![[default-user-image.png]] Здравствуйте, дорогие читатели. Сегодня, как и обещал вам, расскажу о самых популярных инструментах, создающих инсталляторы программ. Многие из них весьма просты, так что могут использоваться не только программистами и производителями ПО, но и теми, кто захочет собрать инсталлятор своими руками. Однако сборка установочных пакетов не тема данной статьи, тема моей статьи: какие основные ключи поддерживают те или иные инсталляторы, как их использовать и как определить, какой инсталлятор используется для той или иной программы. ## InstallShield Начну пожалуй с самой объёмной, самой любимой крупными коммерческими разработчиками По. InstallShield — это мощный профессиональный инструмент создания надежных инсталляционных пакетов. С помощью Project Assistant разработчик шаг за шагом проходит все этапы создания инсталлятора. Никакого обучения не требуется, все основные возможности InstallShield X Express возможно узнать в течении менее одного дня. Полная интеграция со средой разработки Visual Studio .NET, поддержка .NET, Linux, Web services и приложений для мобильных устройств. Встретить его можно очень часто в платных продуктах, например: - [PLEXTALK Recording Software](http://www.plextalk.eu/en/top/products/prs/) Как правило такие инсталляторы не вызывают сложностей, достаточно их запустить с ключом `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`. Примеры программ: - [7-ZIP x64](http://downloads.sourceforge.net/sevenzip/7z920.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](http://www.daisy.org/project/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 + Пробел). Выберите пункт «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. Встроенная собственная виртуальная машина превращает этот продукт в полноценный профессиональный инструмент. Пример [Winamp](http://winamp.com/) Инсталляторы, созданные с помощью бесплатного 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. Это решение позволяет разработчикам создавать испытательные версии программных продуктов и обеспечивает надёжную защиту интеллектуальной собственности от незаконного использования. Только вот ведь незадача, похоже проект умер… ну да ладно, не будем о грустном… Инсталляторы, созданные с помощью WISE Installer принимают стандартный ключ `S`. Пример: ``` Start setup.exe /S ``` ## Я не знаю, какого типа инсталлятор или не могу определить его тип В этом случае используйте ключ "s", как правило он работает. Пример: ``` Start setup.exe /s ``` Производители ПО и драйверов, которые снабжаются уникальным инсталлятором, как правило придерживаются этого стандарта ## Читайте также [Как создать для программы тихий инстолятор? или установка Mozilla Firefox без лишних вопросов](http://tiflohelp.ru/archives/250)[Упаковка *.exe с помощью Win Rar](http://tiflohelp.ru/archives/507)