Разработка инсталляторов. Урок 2. Smart Install Maker и SFX-архивы


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

Героями нашего сегодняшнего материала будут архиваторы WinRar и 7-zip, а также простейшая программа для создания установочных пакетов - Smart Install Maker. Архиваторы установлены у большого количества пользователей и многие знают про создание SFX архивов в этих утилитах.

Подготовка:

Для описания всех своих статей в данной серии я решил взять несколько разных папок с софтом, и накидать в отдельную папку кучу различных файлов и папок. Папка получилась размером примерно 100 МБ и была названа Program. Основной исполняемый файл - Program.exe. Остальные папки и файлы также будут играть некоторую роль в будущих постах, например будут копироваться по разным путям, прописываться в реестр, будут установлены как службы и т.п. Данная папка была скопирована на диск D, дабы не мешалась на рабочем столе. Короче, в будущем нас ждёт много интересного. В данном же случае мы не будем создавать сложные установщики.

WinRar

Скачиваем и устанавливаем программу. О регистрации я писать не буду, можете купить или найти сами знаете где. Благо это несложно. У меня данный архиватор, как и второй герой статьи, устанавливается одним из первых после переустановки ОС. Так как все свои папки с софтом я предпочитаю хранить именно в архивах.

Итак, заходим в нашу папку Program и выделяем все файлы. Правой кнопкой мыши выбираем WinRar -> Добавить в архив (Если в настройках архиватора выбрана интеграция в проводник). Ставим галочку "Создать SFX-архив". Параметры сжатия и т.п выбираем на свой вкус.

Альтернативный вариант - открыть архиватор и перейти в папку Program. А там уже выбрать все файлы и нажать "Добавить". Результат получим то-же, что и на скриншоте выше. Теперь переходим во вкладку "Дополнительно" -> Параметры SFX. Прописываем путь, куда будет установлена программа. Его естественно можно будет поменять при запуске готового установщика. 

Во вкладке "Установка" можно прописать название программы, которая будет выполнена после установки или до неё.

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

После всех настроек заходим во вкладку "Комментарий" и видим команды сценария установки. Опытные пользователи, кто постоянно работает с созданием таких архивов, прописывают тут всё вручную, а не в параметрах SFX:

В результате у нас получается такой вот "инсталлятор":

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

Вообще, таким способом можно распространять другие установщики. Например, в папке будет находится файл-установщик программы, после распаковки во временную папку он будет запущен, а уже после его выполнения запустить другую программу (Для этого надо включить опцию "Ждать и устанавливать код возврата". Например такой-же SFX архив, который находится в этом основном архиве и выполняется после установки в тихом режиме. Для этого в режимах выберите режим ввода информации - > Скрыть всё. И заменяет, например, файлы. Сценариев работы много. Экспериментируйте.

7-ZIP

Принцип добавления файлов аналогичен WinRar:

Но после уже начинаются нюансы. У 7-zip нет удобного конфигуратора для создания SFX. Нужно использовать командную строку, модуль SFX и прописывать параметры в текстовом файле. Это не очень удобно. По этому мы будем работать в 7z SFX Constructor. Последняя версия на данный момент - 2.8.

Работать в программе очень просто. Запускаем 7z SFX Constructor и добавляем папку с проектом. Прописываем пути для папки с проектом. 

Можно установить пароль на инсталлятор, прописать иконку и т.п. Теперь открываем "Сценарий": Создаём ярлык:

В самом окне сценария можно прописать различные сценарии установки. Его можно создать в текстовом документе в кодировке UTF-8. Вся необходимая информация есть в справке по программе. Например, архив можно разделить на тома, если единственный файл получается слишком большим. Описывать все параметры я не буду - их слишком много.  Смотрите опять же справку по модулю.

Также можно настроить интерфейс установщика. Параметров вполне достаточно:

После сборки проекта получаем такой вот простейший установщик.

Также для создания SFX-архивов можно использовать также  SFX Creator  и Конфигуратор 7-zip SFX.  Возможно, есть и другие утилиты, но я с ними не работал. 

Smart Install Maker

Программа предназначена для создания полноценных установщиков. Интерфейс прост:

Заходим во вкладку "Файлы" и добавляем их в проект:

Программа проста и не даёт возможность выбрать тип архиватора, к примеру, так что ждать от неё возможности мощного сжатия файлов не стоит. В этом она проигрывает обычным архиваторам, рассмотренным выше. Во вкладке "Диалоги" можно настроить путь установки, установить пароль на установщик и добавить лицензионное соглашение. Если это вам требуется - создайте заранее файл в формате rtf или txt.

Во вкладке "Интерфейс" можно изменить язык установщика, добавить фон, изменить значки, а также изменить логотипы. Это уже большие плюсы программы. К сожалению, сильно кастомизировать интерфейс, переносить поля, добавлять кастомные диалоговые окна и добавлять новые нельзя. Например в Advanced Installer, которую мы рассмотрим в следующем части -  это поддерживает. И не только.

В настройках ярлыков, я думаю, вы разберётесь. Во вкладке "Реестр" можно прописать нужные вам ключи. Например настройки программы (если они там хранятся) или ключ продукта. 

В программе предусмотрена возможность прописать параметры в ini файлы (например те же настройки устанавливаемой программы, ключи, язык), запустить команду (например на остановку служб), добавить переменные и шрифты. И всё это достаточно понятно для пользователя. Это также большой плюс данной программы. 

В меню "Сервис" можно даже зарегистрировать расширение файла в системе:

После всех настроек выбираем компиляцию:

После сборки получаем такой вот установщик:

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


Comments 1


Я гуманитарий. Ничего не понял

07.03.2017 07:32
0

Я тоже учился на юриста. Что именно не понятно? Создание пакетов для установки программ - эта серия статей, где будут рассматриваться эти вопросы. См 1 часть. Хоть кто-то комментирует, путь и так - это уже плюс.

07.03.2017 07:43
0