Как сделать установщик в inno setup

Обновлено: 07.07.2024

Это мощное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки. Можно создавать свои страницы, используя Inno Setup Form Designer.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта.

Руководство по расширенным возможностям Inno Setup 5 (не для чайников) от Kindly
Версия 5. 1 скачать || версия 5 скачать|зеркало || версия 4 скачать|зеркало || версия 3 скачать|зеркало

Inno Setup Extensions Knowledge Base (содержит ответы на многие вопросы)
Новая версия (Web-интерфейс) || Старая chm-версия скачать | зеркало

Коллекция скриптов и Сборник вопросов , собранных из этой и предыдущих частей топика.

Примечание: Если необходимо использовать метод проверки внешнего файла через сумму MD5 (который описан в 5 версии руководства от Kindly) для запуска инсталлятора, то понадобится калькулятор хеша MD5, калькулятор сумм MD5, SHA-256, CRC32. Если требуется узнать, какие ключи реестра меняет та или иная программа, используйте RegShot. Чтобы растянуть фоновый рисунок на весь экран, в версии Inno Setup 5.1. 10 и выше используйте этот код.

Мощная надстройка для Inno Setup, при помощи которой создавать свои инсталляторы становится очень просто.

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

Прежнее название ScriptMaker. Удобная оболочка для облегчения написания скриптов установки для Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.

Распаковщик установок, сделанных с помощью Inno Setup. При распаковке извлекаются ресурсы и скрипт установки (немного усечённый). Возможно подключение к Total Commander или FAR с помощью MultiArc плагинов.
Поддерживает распаковку инсталляторов, сделанных с помощью Inno Setup начиная с версии 3.0.0-beta по 5. 2.3

если в коде стоит:

ArchitecturesAllowed=x86 x64
ArchitecturesInstallIn64BitMode=x64

то на 64-й платформе реестр пишется сюда: HKEY_LOCAL_MACHINE\SOFTWARE, а должен сюда: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node

если убрать те строки, то всё нормально. в чём трабл?

просто у меня стоят строки:

Filename: \vcredist\vcredist_x86.exe; Check: not Is64BitInstallMode; Flags: waituntilterminated
Filename: \vcredist\vcredist_x64.exe; Check: Is64BitInstallMode; Flags: waituntilterminated

Так что все правильно. Разве что, вместо Is64BitInstallMode, наверно надо использовать IsWin64.

[Setup]
AppName=Test
AppVerName=Test 1.0.1
CreateAppDir=false
Uninstallable=false
OutputBaseFilename=testsetup
ShowUndisplayableLanguages=true
WindowVisible=true
WizardImageFile=pics\wizard.bmp
WizardSmallImageFile=pics\wizard-small.bmp
SetupIconFile=pics\Ico3.ico
WindowResizable=true

[Languages]
Name: en; MessagesFile: compiler:Default.isl
Name: de; MessagesFile: compiler:\Languages\German.isl
Name: ru; MessagesFile: compiler:\Languages\Russian.isl

[CustomMessages]
en.AboutButtonCaption=Credits
de.AboutButtonCaption=Impressum
ru.AboutButtonCaption=Спасибо

[Files]
Source: pics\WizModernBigImage.bmp; Flags: dontcopy
Source: pics\WizModernSmallImage.bmp; Flags: dontcopy
Source: pics\wizard.bmp; Flags: dontcopy
Source: pics\wizard-small.bmp; Flags: dontcopy
Source: support\bass.dll; Flags: dontcopy
Source: support\isxbb.dll; Flags: dontcopy
Source: support\vistaharp.ogg; Flags: dontcopy

Подробнее.
Всего вам наилучшего.
С уважением, Сергей.

2.Или хотябы, как избавиться от заголовка окна(верхней строки, где написано "Установка"(Setup)).

И кстати: ArchitecturesInstallIn64BitMode не имеет отношения к операционной системе (32 или 64). Это разрядность архитектуры (процессора). Т.е.:

Код:[CustomMessages]
en.PageCaption=Test page
en.PageDescription=Continue test
ru.PageCapton=Тестовая страница
ru.PageDescription=Продолжить тест

А в самом коде сделать типа:
Код:
Page := CreateCustomPage(wpWelcome, ExpandConstant( '' ), ExpandConstant( '' ) );

тоесть если в коде

ArchitecturesAllowed=x86 x64
ArchitecturesInstallIn64BitMode=x64

эти строки НЕ СТОЯТ, всё работает правильно и ИННО пишет куда нужно содержимое секций Registry, ну а если СТОЯТ, то он пишет ТУПО в HKEY_LOCAL_MACHINE\SOFTWARE, а должен в HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node

ArchitecturesAllowed=x86 x64
ArchitecturesInstallIn64BitMode=x64

Ну так не ставь эти строки, а проверку запуска пиши так:

Filename: \vcredist\vcredist_x86.exe; Check: not IsWin64; Flags: waituntilterminated
Filename: \vcredist\vcredist_x64.exe; Check: IsWin64; Flags: waituntilterminated

Разработка собственного программного обеспечения это одна задача, а установка его - это совсем другое. Как только Вы создали свой продукт, необходимо подумать о том, каким образом он будет предоставляться конечному пользователю. Если это просто один исполняемый файл, который вы можете просто заархивировать и выложить, то все просто. Но когда Ваш продукт состоит из нескольких файлов таких как, например, dll, которые необходимо зарегистрировать, Вам уже необходим инсталлятор. Даже если Вам просто необходимо создать пару ярлыков на компьютерах пользователей, то инсталлятор уже будет удобен, если Вы, конечно, не хотите, чтобы ваши пользователи делали все вручную.

Дорогой и коммерческий флагман InstallShield знаком всем, и Вы не раз пользовались инсталляторами, созданными этим продуктом. Но, он не является единственным оплотом для создания исталляторов. Существуют и достаточно способные бесплатные продукты, которые могут обеспечить Вас всеми необходимыми возможностями. Я выбрал несколько лучших из них. Они охватывают различные подходы к созданию инсталлятора: от быстрых и легко настраиваемых (5-10 минут и готово) до мощных и поддерживающих огромное количество настроек.

Обзор бесплатных программ для создания инсталляторов

Программа для создания инсталлятора Inno Setup полноценный инструмент

Лучшие бесплатные программы для создания инсталляторов

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

GUI Inno Setup представляет из себя редактор / компилятор для файла конфигурации, который содержит настройки для создания программы установки. Формат текстового файла очень похож на формат файла INI, что позволяет ему быть менее громоздким для работы, чем файл формата XML, как, например, в Ghost Installer. Файл справки отлично структурирован, что позволяет легко и просто узнать о доступных параметрах. Редактор поддерживает схему цветовой подсветки кода, что делает его более удобным для работы. Я не буду перечислять все особенности этого профессионального инструмента для создания программы установки, но я не нашел ничего, что еще Inno Setup не будет в состоянии совершить. Исходные файлы, целевые файлы, ярлыки, диалоги, лицензии принятии, удаление, пользовательские формы и многое другое. Я использовал его в течение нескольких проектов за последние годы с большим успехом (а не затрат). Если вы любите GUI, то для этого отличного инструмента вы можете найти несколько сторонних дополнений на главной странице InnoSetup.

Программа для создания инсталлятора NSIS удобная и мощная

Лучшие бесплатные программы для создания инсталляторов

NSIS - если Вам не особо то и нужен редактор сценариев, и Вы хотите что-то обладающее более расширенными возможностями пользовательского интерфейса, то инструмент от NullSoft для создания программ установки то, что Вам нужно. Это наиболее способный продукт, в котором правда не хватает полноценного пользовательского интерфейса (не считая окна компилятора).

Подобно тому как вы создаете HTML-код для веб-страницы в отдельной программе, и потом отображаете эту страницу в браузере, вы должны создать скрипт NSIS в любом редакторе по вашему вкусу и просто скомпилировать его компилятором NSIS. На домашней странице NSIS Вы можете найти ссылки на редакторы (PSPad, Notepad) и IDE плагины (например, для Eclipse) с поддержкой NSIS скриптов с подсветкой синтаксиса, а так же различные другие вспомогательные программы.

Этот продукт, безусловно, более ориентирован на профессиональных разработчиков, чем на тех, кто ищет быстрых и легких графических решений для создания программ установки. Продукты в данном обзоре рассматривают оба типа этих пользователей, и это создает небольшие трудности для рекомендации одного единого решения. Хотя NSIS более способный, чем InnoSetup, я выбрал последнее из-за его баланса между графическим интерфейсом и функциональностью (включая организацию обучения).

NSIS просто выводит одно маленькое окно с текстовыми ссылками, для того чтобы вы начали с изучения его бесконечных возможностей. Небольшое окно (действительно слишком маленькое, чтобы показать весь текст, но достаточное, чтобы не изменять размеры) содержит ссылки на сам компилятор, примеры скриптов, онлайн-поддержку, документацию и плагины.

Плагины действительно того стоят, они предлагают множество расширенных возможностей, например, эффекты fadeout/fadein для пользовательских диалогов. NSIS предлагает создание более современной установки UI. Вы можете самостоятельно создавать собственные иконки, баннеры, фоны, и сделать из них свой сборник. Сообщество пользователей достаточно велико и многие ресурсы и форумы помогут Вам и поддержат Вас с вашим проектом установки NSIS.

Программа для создания инсталлятора Ghost Installer аналог InnoSetup

Лучшие бесплатные программы для создания инсталляторов

Ghost Installer представляет собой аналог InnoSetup. Если Вы хотите полностью контролировать создание программы установки, и Вы не боитесь работать с XML-файлами конфигурации, то Ghost Installer может быть хорошим выбором для Вас. Хотя коммерческая версия инструмента поставляется вместе с графическим интерфейсом (Ghost Installer Studio), бесплатная версия просто предлагает так называемый gEditor для редактирования файлов XML файлов конфигурации.

Этот продукт требует времени, чтобы освоиться в нем, но как только Вы разберетесь и узнаете обо всех настройках, Вы сможете использовать всю мощь данного инструмента. Файл справки очень хорошо организован, в нем перечислены все ключевые слова и настройки, которые Вы можете использовать. Когда Вы создаете новый проект, мастер-настройки создаст базовый или расширенный шаблон, в котором будет подготовлена необходимая XML-структура, с который Вы можете сразу начать работать. Для меня этот инструмент был несколько сложнее в изучении, нежели InnoSetup, но я уверен, что этот инструмент очень мощный. В итоге мы имеем XML редактор gEditor со встроенной кнопкой, запускающей процесс компиляцию Вашей программы установки. Если для Вас такая схема работы привлекательна, то, безусловно, попробуйте его.

Программа для создания инсталлятора Clickteam Install Creator быстрая и удобная

Лучшие бесплатные программы для создания инсталляторов

Clickteam Install Creator, наверно, самый быстрый и удобный инструмент создания программ установки из тех, что я рассмотрел. Этот инструмент содержит основные функции, заключенные в эффективный графический интерфейс. Мастер достаточно быстро проведет Вас через основные шаги. Мой первый проект был сделан за несколько минут, и все работало на "ура!".

Можно устанавливать растровые изображения и иконки по своему выбору. В Install Creator отсутствуют более профессиональные функции, такие как добавление записей в реестр, различных пакетов установки или языков. Но это не было целью этого инструмента, и это прекрасно для простых задач. Это отличный выбор для быстрого решения по распространению своей программы, без необходимости разбираться в куче тонкостей процесса создания программ установки. Бесплатная версия полностью функциональна, однако, в конце каждой установки показывается окно с рекламой и со ссылкой на веб-сайт разработчиков.

CreateInstall аналог программы для создания инсталлятора Clickteam

Лучшие бесплатные программы для создания инсталляторов

CreateInstall это удовольствие для тех, кто не хочет тратить много времени на процедуру создания программ установки и редактирования кучи текста. Инструмент очень похож на Clickteam Install Creator, он так же представляет собой простой и эффективный интерфейс, где вы можете быстро найти и настроить все важные особенности вашего проекта. Вы можете выбрать пользовательские растровые изображения и иконку для диалога установки, а также указать фоновый градиент заливки для полноэкранного режима. Вы можете настроить шесть диалогов установки и один диалог завершения установки.

Работа с файлами и контекстным меню осуществляется достаточно легко, что является преимуществом над Install Creator. Так же Вам дается возможность задать записи в реестр и зарегистрировать DLL / OCX / TBL файлы. В инструменте есть некоторые дополнительные функции, которые производят достаточно хорошее впечатление. С ними Вы можете изменить некоторые особенности, такие как: выбор языка, выбор пути установки. Однако, у меня возникло несколько вопросов по работе инструмента, а именно по поводу изменения шрифтов диалогов. Для некоторых шрифтов, например, Tahoma, на дисплее будет просто пустое окно. Почему так? Бесплатная версия является полнофункциональной, но выводит строку "CreateInstall Free" в нижнем левом углу каждого окна установки. Вы можете купить этот инструмент, и изменить содержание этой строки по своему вкусу.

Программа Advanced Installer для быстрого создания инсталлятора

Лучшие бесплатные программы для создания инсталляторов

Advanced Installer является хорошим выбором, если Вам необходимо быстро создать MSI пакет установки. Caphyon предлагает бесплатную версию своего инструмента, встроенного в коммерческий продукт, по созданию программ установки. Вы можете скачать и установить полную версию продукта бесплатно, но только "Basic" опции работают без покупки регистрации. Но этого вполне достаточно для быстрого и простого создания MSI пакета установки.

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

При создании программы под windows, всегда в конечном итоге возникает необходимость ее как-то распространять, и лучшего способа, чем создания инсталлера нет. Существует несколько приложений для этого, но на мой взгляд Inno Setup является лучшей. Простота, бесплатность и гибкость для меня явились решающими факторами.
В данной статье будут рассмотрены некоторые моменты, которые позволят установить, обновить, деинсталировать и прописать программу в автозагрузку.

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


1. Определяем директивы


Мы определили наименование программы, текущую версию, имя компании или лица, кто разработал программу, сайт и наименование исполняемого файла.

2. Блок кода "Setup"

AppId= - Значение AppId идентифицирует этого приложения и прописывается при установки в реестр. Нельзя использовать одно и тоже значение AppId для разных приложений.
AppName= - имя приложения.
AppVersion= - версия программы.
AppPublisher= - имя собственника программы.
AppPublisherURL= - ссылка на сайт собственника программы.
AppSupportURL= - ссылка на страницу тех. поддержки.
AppUpdatesURL= - ссылка на страницу обновлений.
DefaultDirName=\ - путь, куда будет установлена программа, - Program Files.
DefaultGroupName= - папка с названием программы.
LicenseFile=C:\project\LICENSE - путь к лицензии.
OutputBaseFilename=Имя программы 0.2 - имя инсталлятора.
SetupIconFile=C:\project\Имя программы.ico - иконка для инсталлятора.
Compression=lzma - параметр, указывающий алгоритм сжатия, при создании инсталлятора.
SolidCompression=yes - создавать или нет непрерывный архив.

3. Блок кода "Languages"

Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

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

4. Блок кода "Tasks"

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


5. Блок кода "Files"


Первые три строчки являются ссылками на исполняемый файл и файлы библиотек, последняя строчка является ссылкой на директорию, recursesubdirs и createallsubdirs параметры означают, что будут включены все файлы и папки лежащие уровнем ниже.

6. Блок кода "Icons"


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

7. Блок кода "Run"

Указывается путь и параметры запуска программы после установки.

8. Блок кода "Code"

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


В этой части прописано, если установлена старая версия программы, то она удаляется.


Ну и теперь весь код скрипта.

AppId=
AppName=
AppVersion=
AppPublisher=
AppPublisherURL=
AppSupportURL=
AppUpdatesURL=
DefaultDirName=\
DefaultGroupName=
LicenseFile=C:\project\LICENSE
OutputBaseFilename=Имя программы 0.2
SetupIconFile=C:\project\Имя программы.ico
Compression=lzma
SolidCompression=yes
[Languages]

Решений для создания инсталляторов достаточно много. Чаще всего используется подсистема Windows Installer, которая уже входит в инструментарий операционной системы. Но существуют и альтернативные решения — как платные, так и бесплатные, различной функциональности. Зачастую с их помощью можно создавать пакеты с инсталлятором, не зависящим от Windows Installer.

  • Среда разработки, интерфейс, поддержка сценариев
  • Работа с проектом, типы создаваемых пакетов, возможности импорта проектов из других сред разработки
  • Пользовательские опции инсталлятора: поддержка языков, профилей и другие опции
  • Поддержка расширений

NSIS (Nullsoft Scriptable Install System)

Меню NSIS

NSIS — бесплатный и широко известный инструментарий для создания инсталляционных пакетов в среде Windows. Отличительные особенности — компактность, масштабируемость, поддержка плагинов и локализаций. Из других возможностей NSIS: поддержка сценариев, различных вариантов установки (включая несколько проектов внутри одного инсталлятора), создание веб-инсталляторов.

Дистрибутивы NSIS создаются на основе сценариев. Переменные, функции полностью контролируют как инсталляцию, так и деинсталляцию продукта. С помощью скриптов можно добавлять файлы и директории, вносить изменения в реестр, редактировать текстовые и двоичные файлы, создавать патчи, управлять переменными среды и даже обращаться к Windows API (посредством расширений).

Синтаксис языка NSIS достаточно прост и удобен для чтения, основная документация к нему доступна здесь. Более того, в комплекте с программой содержится большое количество примеров (файлы формата nsi доступны в папке Examples). Для редактирования nsi-сценариев пригоден любой редактор кода, где без особых усилий можно включить подсветку синтаксиса. Множество задач сразу унифицируется, если использовать специальный плагин для IDE Eclipse, EclipseNSIS, либо Venis. Venis представляет собой интуитивную визуальную среду для создания сценариев.

Мастер настройки инсталлятора Venis

Удобно работать с NSIS в связке и с другими программами, например, Excelsior Installer (см. ниже).

Если возникает необходимость расширить возможности инсталлятора, можно добавить определенные функции. Плагины пишутся на C, C++, Delphi или других языках. Готовые примеры расширений доступны здесь. Функции разнообразны: от визуальных эффектов инсталлятора до создания патчей и обращения к Windows API.

Скомпилировать инсталлятор можно с помощью инструмента makensis, предварительно выбрав тип компрессии — ZLib, BZip2 или LZMA. Кроме того, сам по себе инсталлятор занимает немного места — всего 34 КБ.

Графический интерфейс инсталлятора доступен в одном из двух вариантах исполнения — Classic или Modern. Более функциональный Modern (на данный момент используется его версия 2.0) позволяет создавать страницы мастера установки с использованием текста, шрифтов, изображений, диалогами, опциями и др. На данном этапе помощь окажет программа NSIS Dialog Designer. Она позволяет быстро конструировать интерфейс, а полученный результат сохранять в формат nsdinc, который затем несложно интегрировать в .nsi-скрипт.

Резюме. Среда NSIS уже давно зарекомендовала себя, и в доказательство — список разработчиков, которые используют ее возможности. Несложный язык сценариев, наличие всех необходимых функций, возможность расширения, доступность основных и дополнительных инструментов — за счет всего этого NSIS составляет сильную конкуренцию программам в данной категории.

Inno Setup

Inno Setup — бесплатный инструментарий для создания инсталляторов на базе сценариев. Среди главных особенностей продукта — работа со всеми версиями ОС Windows (Windows 2000 и выше), расширенная поддержка 64-битных приложений, настраиваемые типы установки, встроенный препроцессор и мощный язык сценариев на основе Pascal.

Создание сценария Inno Setup в ISTool

Самый простой вариант создания инсталлятора — обратиться к пошаговому мастеру настройки Inno Script Studio. Здесь указывается информация о продукте, координаты программы, файл лицензии и другие данные, языки локализации, опции компилятора. Впоследствии проект доступен для компиляции, отладки либо модификации полученного сценария в окне редактора.

Редактор Inno Script Studio

Редактор Inno Script Studio доступен на русском языке. Значительно проще настраивать проект последовательно, переходя по секциям, а не создавая сценарий с нуля. При добавлении нового элемента изменения вносятся в код сценария, синтаксис подсвечивается, код соответствующим образом разбит на секции ([Setup], [Types], [Components]…).

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

Из других особенностей Inno Setup — тихая инсталляция и деинсталляция. Пользователю доступны различные типы установки и локализации на выбор. Установщик может быть зашифрован, содержать цифровую подпись либо защищен паролем. К дистрибутиву может применяться bzip2- или LZMA/LZMA2-компрессия. Интерфейс — в стиле 2000/XP, иных вариантов не предусмотрено.

IzPack

Чаще всего, среда разработки инсталлятора закреплена за определенной платформой, и разработчик вынужден использовать различный инструментарий для каждой из них. IzPack решает вопрос кроссплатформенности, используя для своих нужд универсальную среду разработки Java.

Главные особенности IzPack: XML-синтаксис, интеграция с различными инструментами компиляции, простой и гибкий API-интерфейс, возможность локализации.

Принцип создания инсталлятора в IzPack

Среди особенностей инсталляторов, созданных средствами IzPack, — небольшой размер и модульность. В основе дистрибутива лежит XML-документ, где указываются все необходимые спецификации, определяется функциональность продукта. Впоследствии конфигурационный файл обрабатывается любым удобным способом, для этого используется командная строка или Apache Ant. Для наращивания функциональности инсталлятора могут быть задействованы IDE среды, такие как Eclipse, IntelliJ IDEA или Netbeans. Для составления конфигурационного файла подойдет любой редактор кода.

В XML-документе указывается информация о проекте (), интерфейс (), локализации (), файлы (), ресурсы (), панели (), содержимое ( — может быть упаковано в raw, gzip, bzip2) и др. Что касается java, в IzPack есть возможность применения действий (custom acrions) и переменных — встроенных, пользовательских и переменных среды (см. документацию и неофициальное руководство).

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

PackJacket, GUI-надстройка для IzPack

Для создания самораспаковывающихся модулей применяется метод 7-Zip SFX, использующий возможности известного архиватора. Для Mac OS также доступна оболочка под названием izpack2app.Кроме того, есть возможность создания веб-инсталлятора, для этих целей присутствует оболочка izpack2jnlp, использующая возможности Java Web Start. IzPack поддерживает опцию тихой установки.

Оболочка UPX для создания самораспаковывающихся инсталляторов

Резюме. IzPack — одна из немногих кроссплатформенных систем для создания инсталляторов. Процесс написания конфигурации, компиляции и отладки удобен за счет интеграции со средами разработки, несложен в освоении. Из недостатков следует отметить значительно устаревший (и не оригинальный — native) вид получаемого инсталлятора.

Excelsior Installer

Работа с проектом в Excelsior Installer

Excelsior Installer — бесплатная программа, предназначенная для создания инсталляторов и обновлений. Основные особенности — простая интуитивная графическая оболочка, возможность интеграции с Проводником и NSIS.

  • Файлы и папки приложения, ярлыки
  • Описание: имя компании, название продукта, версия продукта

Как уже было упомянуто, возможна интеграция Excelsior с NSIS. Excelsior Installer, по сути, выступает полноценным GUI для NSIS, настройки проекта экспортируются без проблем.

В ряду с этим участником обзора, стоит выделить еще один родственный продукт — Excelsior Delivery. По большей части функции Excelsior Installer дублируются. Но есть также и несколько дополнительных функций: добавление в систему OLE- и ActiveX-элементов, файловых ассоциаций, библиотек, создание опросов пользователей. Лицензионная версия Excelsior Delivery (стоимостью $99) позволяет также применить к установщику фирменное оформление (branding). Если эта опция неважна, можно скачать некоммерческую версию программы.

Резюме. Excelsior Installer — простая и очень понятная система для создания дистрибутивов, может использоваться как надстройка к NSIS. Обратная сторона медали — усредненная функциональность как Excelsior Installer, так и Delivery.

WiX Toolset

WiX (Windows Installer XML) — бесплатный набор инструментов для создания инсталляторов (Windows Installer) с использованием спецификации XML. Из особенностей: интерфейс командной строки, интеграция с IDE, автоматизация процессов, поддержка базовых и расширенная поддержка Windows Installer.

Ядро WiX составляют компилятор (candle), компоновщик (light), библиотекарь (lit), декомпилятор (dark), бутстраппер инсталляции (burn) и другие утилиты. С их помощью можно создавать пакеты инсталляции .msi, модули слияния .msm, патчей .msp.

Создание инсталлятора состоит из нескольких основных этапов: разработка сценария, его проверка, обработка препроцессором, компиляция и компоновка. Для сборки инсталлятора и автоматизации в целом используется платформа MSBuild. Автоматизация — одно из главных преимуществ WiX при работе с достаточно ресурсоемкими проектами.

Исходный код имеет формат XML (расширение файла wxs). Сценарий описывает все этапы установки, начиная с описания проекта заканчивая действиями после установки. Редактировать его можно в любом редакторе с поддержкой данного формата.

WiX радует своими интеграционными возможностями: WiX Toolset предоставляет интерфейс командной строки. Для работы с проектом в Visual Studio (модуль IntelliSense) потребуется расширение Votive.

В затруднительных ситуациях или при отсутствии времени на изучение сценариев, хорошую службу окажет графическая оболочка WiXEdit. Ее основные преимущества — импорт существующих wxs-проектов, структурирование xml-данных с удобным чтением и навигацией. С помощью мастера также несложно создать инсталляционный файл с нуля. Причем это далеко не единственный подобный инструмент (см. здесь).

Определение функциональности в WiX Edit

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

Начало работы с Inno Setup (11) - запускать определенные программы после завершения установки.

Начало работы с Inno Setup (11) - запускать определенные программы после завершения установки.

Примечание. Если ваша программа не принимает параметры, переданные параметры будут проигнорированы.


Эффект такой:

Эффект следующий:

Читайте также: