Създаване на дистрибуция за инсталиране на програма. Създаване на дистрибуция на Windows приложение в Inno Setup

Ти написа страхотна програмаи всичко, което остава, е да създадете оригинален и приличен инсталатор за него, така че потребителят да може лесно и просто да инсталира вашето приложение на компютъра си с няколко кликвания? Как да си направим инсталатор софтуер? Среща - безплатна програма, помагайки за създаването на висококачествен инсталатор за приложение, работещи в околната среда операционна система Windows. Резултатът от работата Ще има една програма за инсталиране на EXE програма. полезностима широки възможностиза създаване на инсталационен файл на програма, в някои случаи той значително превъзхожда функционалносттърговски продукти за създаване на софтуерни пакети. програмавключва съветник за създаване на инсталационен пакет ( съветник), благодарение на което можете бързо и лесно да създадете пакет за разпространение на програмата.

Създаване на дистрибуция

Inno Setup е лесен за настройка, има ясна структура на скриптове, поддържа криптиране, скриптове на езика Паскал, задаване на парола, четене от и запис в регистъра, задаване на задачи, които да бъдат изпълнени след завършване на инсталацията. Опцията тип инсталация ви позволява да създавате опции като пълна, минимална или индивидуална инсталацияс персонализирано набиране. Inno Setup поддържа създаването на многоезични софтуерни дистрибуции. Всички характеристики и настройки на бъдещия инсталатор на програмата се съхраняват в скрипт (инсталационен скрипт), който трябва да бъде компилиран след написването му. Програмата включва готови примери на скриптове, фокусирани върху различни задачи, които създадената дистрибуция ще изпълнява.


Инсталационен скрипт

Инсталационен скрипттова е обикновен текстов файл с разширение INIразделени на секции (имената на секциите са в квадратни скоби: , , и т.н.). Скриптът съдържа всички необходими опции и настройки за създадената дистрибуция, като информация за автора, име и версия на програмата, файлове на приложението, инсталационна директория и други. Ако нямате достатъчно съветник за създаване на дистрибуция или нямате време да изучавате параметрите и константите на секциите, в интернет има голям брой готови скриптове за Inno Setup.


Инсталационните пакети, създадени от програмата Inno Setup, работят безпроблемно, имат приличен дизайн и изпълняват всичко необходими изискванияза инсталиране на софтуер. Inno Setup е професионален, компетентен, безплатно и надеждновсеки инструмент за програмист. Предлаганият за изтегляне архив съдържа помощен файл, преведен на руски (помощ) програми

Официален уебсайт: http://www.jrsoftware.org
Операционни системи: Windows All
Поддържани езици: английски
Версия: 5.4.2 (a)
Разрешително: безплатен софтуер (безплатно)

Размер на файла 1.79 MB

За да улесните инсталирането на вашите програми на компютрите на потребителите, ще трябва да създадете комплект за разпространение. Днес искам да говоря за много мощен и безплатен инструментза създаване на комплекти за разпространение за Windows OS - Inno Setup.

Относно Inno Setup

Inno Setup, който се появи през 1997 г., днес се конкурира с платените инсталатори и дори надминава много от тях по отношение на броя на функциите и стабилността. Началната страница на проекта се намира.

Ето основните характеристики на инсталатора:

      • Подкрепа за всички Windows версиизапочвайки от Windows 2000, включително: Windows 8, Windows сървър 2012, Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP, Windows Server 2003 и Windows 2000. В този случай не са необходими пакети за актуализиране.
      • Разширена поддръжка за инсталиране на 64-битови приложения на 64-битови версии на Windows. Поддръжка за x64 и Itanium архитектури (ако използвате Windows Server 2003 на Itanium архитектура, се изисква Service Pack 1 или по-нова версия, за да инсталирате 64-битов режим).
      • Възможност за създаване на комплект за разпространение, състоящ се от един единствен EXE файл за лесно разпространение в Интернет. Поддържа се и разделяне на дискове.
      • Стандартен интерфейс на съветника за инсталиране в стил Windows 2000/XP.
      • Типове инсталации с възможност за персонализиране като пълен, компактен, потребителски.
      • Широка гама от опции за деинсталиране.
      • Инсталиране на файл: Включва интегрирана поддръжка за компресия deflate, bzip2 и 7-Zip LZMA/LZMA2. Инсталаторът може да сравнява версиите на файловете, да заменя използваните файлове, да използва преброяване на споделени файлове, да регистрира DLL/OCX и да въвежда библиотеки и да инсталира шрифтове.
      • Създавайте преки пътища навсякъде, включително менюто "Старт" и работния плот.
      • Създаване на елементи от системния регистър и INI файлове.
      • Стартирайте други програми преди, по време и след инсталацията.
      • Създаване на многоезични дистрибуции, включително езици отляво надясно.
      • Създаване на защитени с парола и криптирани дистрибуции.
      • Поддръжка на цифров подпис по време на инсталиране и деинсталиране.
      • Скрит монтаж и демонтаж.
      • Поддръжка на Unicode.
      • Вграден препроцесор за допълнителна персонализация по време на компилация.
      • Вграден скриптов двигател на Pascal за извършване на допълнителни действия по време на инсталиране и деинсталиране.
      • Безплатен изходен код (Borland Delphi 2.0-5.0 и 2009).

Голямото предимство на Inno Setup е, че е абсолютно безплатно за използване, дори и за търговска употреба. Въпреки това, като благодарност или в подкрепа на инсталатора, можете да направите дарение. Има и списък на всички, дарили $100 или повече.

Ето как изглежда началната страница на съветника за инсталиране на стандартна дистрибуция, създаден с помощта на Inno Setup.

Относно създаването на дистрибуция в Inno Setup

Създаването на дистрибуция с помощта на Inno Setup протича по следния начин:

1. Първо създавате скрипт за настройка на Inno. Скриптът Inno Setup е текстов файл с разширение .iss, който съдържа свойствата на дистрибуцията и набор от действия, извършвани по време на инсталиране и премахване. Скриптът може да бъде създаден с помощта на стандартния редактор на Inno Setup (вижте снимката) или с помощта на един от редакторите на трети страни, като Inno Script Studio или ISTool. В тази статия ще разгледам само използването на стандартния редактор на Inno Setup.

2. След това компилирате скрипта, което води до разпространение.
3. След компилирането можете да тествате и отстранявате грешки в получената дистрибуция, като извършвате инсталация и деинсталация.

Инсталиране на Inno Setup

За да създадете дистрибуции с помощта на Inno Setup, трябва само да инсталирате компилатора Inno Setup на вашия компютър. Разпределението може да бъде изтеглено. Можете да намерите връзката за изтегляне на най-новата стабилна версия в секцията Stable Release. Към момента на писане последна версия Inno Setup беше 5.5.5, вижте снимката. За да изтеглите дистрибуцията, щракнете върху връзката „Случаен сайт“ до версията с поддръжка на Unicode (файл isetup-5.5.5-unicode.exe) или без нея (ANSI версия - файл isetup-5.5.5.exe). За да избегнете проблеми с показването на кирилицата, по-добре е веднага да използвате опцията Unicode Inno Setup.

Ако ще шифровате бъдещата си дистрибуция, тогава трябва да изтеглите модула за шифроване ISCrypt.dll отделно в секцията Модул за шифроване, вижте снимката (по-долу виждате връзка към изходните кодове на този модул - ISCrypt.zip).

На същата страница в секцията QuickStart Pack можете да намерите връзка към комплектите за разпространение ispack-5.5.5.exe и ispack-5.5.5-unicode.exe за инсталиране на Inno Setup заедно с Inno Script Studio, вижте снимката. Inno Script Studio е разработка на трета страна (Kymoto Solutions), която ви предлага своя удобен за потребителя интерфейс и възможност за отстраняване на грешки във вашия инсталатор по време на изпълнение. Освен това тази дистрибуция ще предлага автоматично изтегляне и инсталиране на модула за криптиране ISCrypt.dll.

В допълнение към всичко по-горе, на страницата за изтегляне има секции Beta Release, за изтегляне на бета версии на Inno Setup и за изтегляне на изходни кодове, върху които няма да се фокусирам.

Ако възнамерявате да използвате по-усъвършенствани редактори на скриптове за Inno Setup, тогава ще се интересувате и от страницата с файлове на трети страни за Inno Setup със списък на разработки на трети страни. Ето разработките на трети страни, които можем да използваме във връзка с Inno Setup:

      • Inno Script Studio - потребителски интерфейс и дебъгер. Инсталиран с помощта на дистрибуцията QuickStart Pack (вижте по-горе) или отделна дистрибуция, която можете да изтеглите от уебсайта на разработчика. Има русификация.

      • Visual & Installer е платен плъгин за Визуално студио(поддържан от Visual Studio 2005, 2008, 2010, 2012 и 2013) за създаване на дистрибуции с помощта на Inno Setup. Visual & Installer съдържа също графичен съветник за инсталиране, който ви позволява да създавате тематично проектирани дистрибуции (вижте примерите).

    • Inno Download Plugin – библиотека и скрипт Inno Setup, който прави възможно изтеглянето на файлове по време на инсталирането на вашата дистрибуция. Има поддръжка за руски език. Поддържа се FTP протоколи, HTTP и HTTPS.

      • InnoTools Downloader е друга опция, подобна на Inno Download Plugin, също за изтегляне на файлове по време на инсталация. Но тук няма локализация и се поддържат само FTP и HTTP.
      • VCL Styles for Inno Setup / ISSkin / Graphical Installer (последният инструмент е платен) - инструменти за промяна на дизайна на съветника за инсталиране на вашата дистрибуция.

      • InnoScript - автоматично създава файл със скрипт на Inno Setup (.iss) от файла на проекта Visual Basic(.vbp или .vbproj). Има русификация.

      • – създава комплект за разпространение за проект на Visual Basic от средата за разработка на Visual Basic 6.0.

      • – позволява Delphi файлпроект (.dpr) или от файла на проекта на библиотеката на Delphi (.dpk) създайте списък от зависимости, необходими за създаване на дистрибуция. Тази помощна програма отказа да работи за мен с проекта Delphi XE3.
      • Inno Setup Script #Includes - библиотека от функции, които можете да използвате по време на инсталацията. Списъкът с функции може да се види.
      • Inno Setup Easy Translator е редактор за езикови файлове на Inno Setup (.isl). Този сайт не работи от 2013 г., но няма нужда да се притеснявате, защото можете лесно да създавате и редактирате езикови файлове във всеки текстов редактор.
      • UninsHs е разширение, което ви позволява да добавите поддръжка за поправка/промяна/премахване към вашите приложения.

Също така в този списък по някаква причина все още има някои добре известни разработки (списъкът е актуализиран на 13.04.2015 г.):

      • – потребителски интерфейс за работа със скрипта Inno Setup. Тази програма е много подобна на Inno Script Studio. Ако търсите, можете да намерите русификация, вижте снимката.

      • InnoIDE е друг потребителски интерфейс за работа със скрипта Inno Setup. Уебсайтът InnoIDE престана да съществува около август 2012 г. (www.innoide.org), така че няма смисъл да използвате тази разработка. Но е запазен архивът на сайта, който може да бъде разгледан. Можете също да изтеглите дистрибуцията оттам. Русификация за InnoIDE може да се намери в Интернет.

      • InnoSetup Script Joiner е помощна програма, която комбинира няколко скрипта за настройка на Inno в един.
      • (Inno Setup Unpacker) - разопаковане на дистрибуции, създадени с помощта на Inno Setup. Конзолно приложение.
      • InnoExtractor е друг инструмент за разопаковане, но има потребителски интерфейс. Има русификация. Работи перфектно с моята криптирана тестова дистрибуция (вижте снимката). Както можете да видите, той получава абсолютно всички файлове, включително файловете, използвани от инсталатора, и дори файла със скрипта Inno Setup.

Всъщност, след като сте решили необходимата функционалност, можете да започнете инсталацията. Тук ще разгледам само инсталирането на Inno Setup + Inno Script Studio с помощта на QuickStart Pack (файл ispack-5.5.5-unicode.exe). Въпреки че няма смисъл да описвам подробно всички стъпки, ще се спра само на няколко. Квадратчето „Изтеглете и инсталирайте Inno Script Studio“ трябва да бъде отметнато, ако искате да инсталирате Inno Script Studio, квадратчето „Инсталиране на Inno Setup Preprocessor“ – за инсталиране на препроцесора, квадратчето „Изтегляне и инсталиране на поддръжка за криптиране“ – за инсталиране на ISCrypt .dll модул за криптиране на разпространението.

Първо стартиране на Inno Setup Compiler

Единственият прозорец на програмата Inno Setup е прозорецът на компилатора. Компилаторът се стартира от менюто "Старт". Когато го стартирате за първи път, ще видите подкана да създадете празен скрипт, да стартирате съветника за създаване на скрипт или да отворите примери или наскоро използвани файлове.

Ако нямате опит с Inno Setup, тогава примерите ще ви бъдат полезни. Нека отворим пример, щракнете върху бутона "OK" и изберете един от примерите. След като примерът се отвори, можете да оцените как изглежда прост скрипт за настройка на Inno. Също така имайте предвид, че интерфейсът на компилатора е много прост и ще трябва да напишете целия скрипт ръчно. Тук ще имате на ваше разположение само справка и примери.

Използване на съветника за създаване на скрипт за настройка на Inno

Можете да създадете нов скрипт за настройка на Inno от нулата или да използвате съветника за скриптове. Например ще направя дистрибутив за инсталиране на програмата MyProg.exe, която се намира в папката с примери (инсталира се с Inno Setup). При стартиране програмата показва два прозореца и излиза.

За да отворите прозореца на съветника за създаване на скрипт, щракнете върху елемента от менюто „Файл -> Нов“ Или в прозореца за добре дошли изберете опцията „Създаване на нов скриптов файл с помощта на съветника за скриптове“ и щракнете върху „OK“. Първият екран на съветника ще бъде приветствено съобщение. Щракнете тук върху „Напред >“.

На втория екран въведете името на приложението, версията на приложението, издателя на приложението и уебсайта на приложението. Маркирани с удебелен шрифт в съветника задължителни полета, а останалите могат да бъдат празни.

В следващата стъпка избирате папка за вашето приложение. По подразбиране, както можете да видите от снимката, това е папка със същото име като името на приложението и тя ще бъде създадена вътре Програмни папкифайлове. Квадратчето „Разрешаване на потребителя да промени папката на приложението“ ще позволи на потребителя да промени папката по време на инсталационния процес. И когато поставите отметка в квадратчето „Приложението не се нуждае от папка“, папката на приложението изобщо няма да бъде създадена.

Ако изберете „(По избор)“ от падащия списък „Базова папка на местоназначение на приложението“, тогава в полето точно по-долу можете да зададете произволен път. Например, за да бъде папката на вашето приложение на системното устройство, трябва да посочите „(sd)“.

Както можете да видите, за да посоча системното устройство, посочих „(sd)“ вместо „C:“, защото on различни компютри системен дискможе да е различно. По принцип в Inno Setup ще използвате много често константи като „(sd)“. Всички константи са оградени с фигурни скоби и има много от тях. Ето пълен списък с константи с кратко описание (за пълно описание вижте раздела „Константи“ в помощта):

Константи на директорията:

      • (приложение) – директория на приложението, например „C:\Porgram Files\My Program».
      • (win) – директория на Windows, например „C:\WINDOWS“.
      • (sys) – System32 директория, например „C:\WINDOWS\SYSTEM“.
      • (src) – директорията, в която се намират файловете за разпространение (това е временна папка с разопаковани файлове за разпространение).
      • (sd) – системно устройство, например „C:“.
      • (pf) – директория на приложението, например „C:\Program Files (x86)“ (в 64-битов режим това ще бъде папката за 64-битови приложения). В 32-битов режим тази константа е еквивалентна на константата (pf32) , а в 64-битов режим е еквивалентна на (pf64) .
      • (cf) – папка с общи файлове, например „C:\Program Files (x86)\Common Files“. В 32-битов режим тази константа е еквивалентна на константата (cf32) , а в 64-битов режим е еквивалентна на (cf64) .
      • (tmp) – временна папка, използвана по време на инсталиране или деинсталиране (името на папката ще бъде във формат „C:\WINDOWS\TEMP\IS-xxxxx.tmp“).
      • (шрифтове) – папка с шрифтове.
      • (dotnet11) – Основна папка на .NET Framework 1.0.
      • (dotnet20) – Основна папка на .NET Framework 2.0. В 32-битов режим тази константа е еквивалентна на константата (dotnet2032), а в 64-битов режим е еквивалентна на (dotnet2064).
      • (dotnet40) – Основна папка на .NET Framework 4.0. В 32-битов режим тази константа е еквивалентна на константата (dotnet4032), а в 64-битов режим е еквивалентна на (dotnet4064).

Константи на папката на средата:

      • (група) – път към папката на менюто „Старт“, достъпна за всички потребители.
      • (localappdata) – път към локалната (без роуминг) папка с данни на приложението.
      • (sendto) – път към папката Send To на потребителя.
      • (userappdata) и (commonappdata) – път към папката Application Data.
      • (usercf) – път към папката Common Files на потребителя (работи само за Windows 7 и по-нови версии; за по-стари версии на Windows тази константа ще бъде равна на (localappdata)\Programs\Common).
      • (userdesktop) и (commondesktop) * - път към папката на работния плот.
      • (userdocs) и (commondocs) – път към папката My Documents.
      • (userfavorites) и (commonfavorites) * - път към папката Favorites.
      • (userpf) – път до папката Program Files на потребителя (работи само за Windows 7 и по-нови версии; за по-стари версии на Windows тази константа ще бъде равна на (localappdata)\Programs).
      • (потребителски програми) и (общи програми) * - път към папката „Всички програми“ в менюто „Старт“.
      • (userstartmenu) и (commonstartmenu) * - път до най-горното ниво на менюто "Старт".
      • (userstartup) и (commonstartup) * - път до папката Startup в менюто "Старт".
      • (usertemplates) и (commontemplates) * - път към папката „Templates“.

* = "общи" константи са равни на "потребителски" константи, ако потребителят няма административни привилегии или командата PrivilegesRequired е зададена на най-ниска.

Други константи:

      • (\) – използва се в случаите, когато трябва да инсталирате наклонена черта в края на пътя, например (app)(\). В противен случай Inno Setup ще премахне последната наклонена черта.
      • (%NAME|DefaultValue) – стойността на променливата на средата, където NAME е името на променливата, DefaultValue е низът, който ще се използва, ако променливата не съществува. DefaultValue – по избор. Примери: (%COMSPEC) или (%PROMPT|$P$G). Ако редът използва знаците „,“, „|“, „)“ или „%“, тогава вместо тях трябва да напишете „%2c“, „%7c“, „%7d“ и „%25“, съответно.
      • (cmd) – пълният път до конзолата, например Windows\System32\cmd.exe (променливата на средата COMSPEC не се използва за разширяване на тази константа).
      • (име на компютър) – името на компютъра, на който се извършва инсталирането или деинсталирането (стойността, върната от функцията GetComputerName).
      • (устройство:Път) – Получава буквата на устройството, последвана от двоеточие от произволен път. Ако е зададен UNC път, той връща сървъра и папката, например \\SERVER\SHARE. И тук, за да напишете знаците „,“, „|“, „)“ или „%“, трябва да напишете съответно „%2c“, „%7c“, „%7d“ и „%25“. Ето примери: (drive:(src)), (drive:c:\path\file) или (drive:\\server\share\path\file).
      • (име на група) – името на папката в менюто „Старт“ за вашите елементи от менюто, които потребителят е избрал по време на инсталацията. За разлика от константата (групата), тя връща само името, а не пълния път.
      • (hwnd) – идентификатор на фоновия прозорец на инсталатора.
      • (wizardhwnd) – идентификатор на прозореца на съветника за инсталиране или 0, ако идентификаторът не е наличен.
      • (ini:Filename,Section,Key|DefaultValue) – стойност от INI файла, където Filename е името на INI файла, Section е името на секцията в INI файла, Key е името на ключа в INI файл, DefaultValue е низът, който трябва да използвате, ако указаният ключ не бъде намерен. И тук, за да напишете знаците „,“, „|“, „)“ или „%“, трябва да напишете съответно „%2c“, „%7c“, „%7d“ и „%25“. Пример: (ini:(win)\MyProg.ini,Настройки,Път|(pf)\Моята програма).
      • (език) – вътрешно имеизбран език.
      • (cm:MessageName) и (cm:MessageName,Arguments) – съобщение на текущия език, където MessageName – име на съобщението, Arguments – аргументи за съобщението, разделени със запетаи. И тук, за да напишете знаците „,“, „|“, „)“ или „%“, трябва да напишете съответно „%2c“, „%7c“, „%7d“ и „%25“. Пример: (cm:LaunchProgram,Inno Setup).
      • (reg:HKxx\SubkeyName,ValueName|DefaultValue) – низ от системния регистър, където HKxx е основният ключ на системния регистър, SubkeyName – пътят до желания ключ, ValueName – името на стойността (или празно, ако трябва да прочетете стойността по подразбиране за ключа), DefaultValue – низът, който да се използва, ако няма посочена стойност или стойността не е низ (REG_SZ или REG_EXPAND_SZ). И тук, за да напишете знаците „,“, „|“, „)“ или „%“, трябва да напишете съответно „%2c“, „%7c“, „%7d“ и „%25“. Пример: (reg:HKLM\Software\My Program,Path|(pf)\My Program).
      • (param:ParamName|DefaultValue) – параметър, предаден на инсталатора в командния ред, където ParamName е името на параметъра, DefaultValue е низът, който ще се използва, ако посоченият параметър не бъде намерен. Тук, за да напишете знаците „,“, „|“, „)“ или „%“, трябва да напишете съответно „%2c“, „%7c“, „%7d“ и „%25“. Пример: (param:Path|(pf)\My Program).
      • (srcexe) – пълен път до инсталатора, например C:\SETUP.EXE.
      • (uninstallexe) – пълен път до програмата за деинсталиране, създадена от инсталатора, например C:\Program Files\My Program\unins000.exe. Тази константа обикновено се използва за създаване на пряк път за деинсталиране на програма в раздела на скрипта за настройка на Inoo. Константата е валидна само ако операторът Uninstallable е зададен на yes.
      • (sysuserinfoname), (sysuserinfoorg) – съответно името и организацията, под която е регистриран Windows. Тази информация се чете от регистъра.
      • (userinfoname) , (userinfoorg) , (userinfoserial) – съответно име, организация и сериен номер, зададени от потребителяна страницата с информация за потребителя в съветника за инсталиране (който може да бъде активиран чрез оператора UserInfoPage). Обикновено тази информация се използва за запис в системния регистър или INI за по-късна употреба.
      • (потребителско име) – името на потребителя, който е стартирал инсталатора или деинсталатора (използва се функцията GetUserName).
      • (дневник) – име на лог файла или празен низ, ако регистрирането не е разрешено.

Следващата стъпка в Inno Setup Script Wizard ви позволява да добавите файловете на вашето приложение.

В най-горното поле се избира главният изпълним файл. Ако поставите отметка в квадратчето „Разрешаване на потребителя да стартира приложението след завършване на настройката“, тогава потребителят ще види предложение за стартиране на приложението след инсталирането. Ако вашата дистрибуция няма изпълним файл, тогава можете да поставите отметка в квадратчето „Приложението няма основен изпълним файл“. По-долу е даден списък с файлове за вашето разпространение. Тук можете да добавите отделни файлове(бутон „Добавяне на файл(ове)…“) или цели папки (бутон „Добавяне на папка…“). Когато добавите папка, ще видите допълнителен въпрос дали да включите подпапки или не.

След като добавите папки и файлове към списъка, ще можете да редактирате всеки елемент (бутон „Редактиране...“) или да го изтриете (бутон „Премахване“). В прозореца за редактиране можете да промените много параметри: дали трябва рекурсивно да включвате подпапки (квадратче за отметка „Рекурсивни подпапки“), дали трябва да включите празни папки (квадратче за отметка „Включване на празни подпапки“), базова папкаместоназначение (полета „Целева основна папка“) и папка вътре в основната целева папка („Целева подпапка“).

Ще добавим помощен файл само като пример.

Следващата стъпка от съветника е да изберете иконите, които да бъдат създадени. В полето „Име на папка на стартовото меню на приложението“ задайте името на групата в менюто „Старт“. Ако поставите отметка в квадратчето „Разрешаване на потребителя да промени името на папката в менюто Старт“, тогава потребителят ще може да промени името на папката по време на инсталацията, а ако поставите отметка в квадратчето „Разрешаване на потребителя да деактивира създаването на папка в менюто Старт“, тогава потребителят ще може напълно да забрани създаването на тази папка в менюто "Старт". Поставете отметка в квадратчето „Създаване на пряк път към Интернет в папката на менюто „Старт““ и „Създаване на икона за деинсталиране в папката на менюто „Старт“, така че инсталаторът да създава преки пътища в групата, съответно за отваряне на вашия сайт и за деинсталиране на вашето приложение. Квадратчетата „Разрешаване на потребителя да създава икона на работния плот“ и „Разрешаване на потребителя да създава икона за бързо стартиране“ ще позволят на потребителя да създава преки пътища на работния плот и в групата за бързо стартиране. Ще проверя всички квадратчета.

Следващата стъпка е да настроите лицензните файлове и информационните файлове, които ще се показват преди и след инсталацията. Ако сте посочили файл с лиценз, тогава по време на инсталацията потребителят ще трябва да се съгласи с лиценза. Поддържат се файлове .txt и .rtf. Ще посоча файловете license.txt и Readme.txt от папката examples.

В следващата стъпка изберете поддържаните езици. Ще оставя английския и ще добавя руския.

Следващата стъпка е да зададете параметрите за компилатора Inno Setup. В полето „Custom compiler output folder“ посочете пътя до папката, в която компилаторът на Inno Setup ще запази създадената дистрибуция. Ако това поле е празно, разпространението ще бъде създадено в същата папка като .iss файла. Полето „Име на изходния базов файл на компилатора“ указва основното име за файла или файловете за разпространение. Например, ако зададете името на "setup", тогава, когато създавате дистрибуция, състояща се от един файл, ще получите файла setup.exe. В полето „Файл с икона за персонализирана настройка“ можете да посочите името на файла с икони за бъдещото разпространение. Ако тук не е посочено нищо, ще се използва стандартна икона. В последното поле „Парола за настройка“ можете да посочите паролата, която потребителят ще трябва да посочи по време на инсталацията. Ако има отметка в квадратчето „Използвайте паролата за шифроване на файловете на приложението“, тогава файловете в разпространението ще бъдат шифровани с помощта на посочената парола. Например, ще попълня всички полета по свой начин.

Следващата стъпка ви уведомява, че препроцесорът за настройка на Inno е открит и ви подканва да използвате #defines, за да опростите вашия скрипт. Ако искате да използвате директивата #define, оставете отметката в квадратчето „Да, използвайте #define директиви за компилатор“. Ако квадратчето за отметка не е отметнато, тогава в бъдеще можете да добавите #define директиви към вашия скрипт ръчно.

И накрая се появи последната стъпка, където просто щракваме върху бутона „Край“.

След това компилаторът веднага иска да компилира нашия скрипт. Нека се съгласим и щракнете върху бутона "Да".

След това компилаторът ще ни предупреди, че скриптът не е записан и ще предложи да го направим.

Да се ​​съгласим (щракнете върху „Да“) и да запазим скрипта. След записването скриптът беше компилиран и готовото разпространение, в примера това е файлът my-setup.exe, беше създадено в папката, която посочих в съветника в стъпка „Настройки на компилатора“. След компилирането можете да видите как върви в панела „Изход на компилатора“ в долната част на прозореца на компилатора, вижте снимката.

Както можете да видите, всичко е просто. Сега нека веднага тестваме готовата дистрибуция. Щракнете върху елемента от менюто “Run -> Run”, за да стартирате инсталацията на програмата.

След като създадете шаблона на скрипта, можете да започнете да добавяте различни разширени действия.

Отстраняване на грешки в разпространение в Inno Setup

За да отстраните грешки във вашата дистрибуция, отворете .iss скрипта и щракнете върху елемента от менюто „Run -> Run“, за да стартирате инсталацията на програмата. След това ще можете да наблюдавате вътрешните процеси по време на инсталацията в прозореца „Debug Output“, ще можете да зададете точки на прекъсване на необходимите редове, вижте снимката.

За да проверите стойността на константа по време на отстраняване на грешки, щракнете върху елемента от менюто „Run -> Evaluate Constant...“ и в диалоговия прозорец, който се появява, посочете името на константата (вижте снимката) и щракнете върху „OK“.

След това ще се появи следният прозорец с резултата, върнат от константата.

За да отстраните грешки при деинсталирането, щракнете върху елемента от менюто „Run -> Target Uninstall“ и след това „Run -> Run“. И за да се върнете обратно към инсталацията, щракнете върху елемента „Run -> Target Setup“.

Структура на скрипта за настройка на Inno

Скриптовете в Inno Setup са разделени на секции. Името на всеки раздел е оградено в квадратни скоби. Всеки раздел съдържа елементи, специфични за този раздел. За удобство можете да създадете няколко секции с едно и също име. Такива секции ще се възприемат като едно. Ето един пример:

[Настройка] AppName = Моята програма [Файлове] Източник: "MYPROG.EXE"; DestDir: "(приложение)"

Можете да коментирате редове, така че компилаторът да ги игнорира, като поставите пред тях точка и запетая.

Скриптът поддържа подобна на C директива #include, която принуждава компилатора да изтегля редове от посочения произволен текстов файл на мястото, където се появява тази директива. Ето синтаксиса:

#include "filename.txt"

С директивата #preproc можете да посочите кой препроцесор да използвате: вградения препроцесор, който поддържа само директивата #include, или Inno Setup Preprocessor (ISPP), който поддържа много голям брой директиви и функции. По подразбиране скриптовете използват ISPP препроцесор, ако е инсталиран, а .isl файловете използват вградения препроцесор. Ето синтаксиса:

#preproc вграден #preproc ispp

Секции на скрипта за настройка на Inno

Тук ще предоставя пълен списък на всички раздели на Inno Setup с кратко описание. Пълно описание на секциите и списък на елементите на секциите могат да бъдат намерени в помощта в раздела „Секции на скрипт за настройка“.

– този раздел съдържа глобални настройки, използвани по време на инсталиране и деинсталиране. Пример:

[ Настройка ] AppName =Моята програма AppVersion =1.5 DefaultDirName =( pf ) \Моята програма DefaultGroupName =Моята програма

– незадължителен раздел, който определя опциите за инсталиране (Пълен/Компактен/Персонализиран), които ще се показват на страницата за избор на компоненти за инсталиране. Пример:

[Типове] Име: "пълен"; Описание : "Пълна инсталация" Име : "compact" ; Описание : "Компактна инсталация" Име : "персонализиран" ; Описание : "Инсталация по избор" ; Флагове: iscustom

– незадължителен раздел, който определя компонентите, които ще се показват на страницата за избор на компоненти за инсталиране. Пример:

[Компоненти] Име: "main"; Описание : "Основни файлове" ; Видове: пълен компактен по поръчка; Флагове: фиксирани Име: "помощ"; Описание : "Помощни файлове" ; Типове : пълно име : "help\english" ; Описание : "Английски" ; Типове : пълно име : "help\dutch" ; Описание : "Холандски" ; Видове: пълен

– незадължителен раздел за създаване допълнителни задачиизвършени по време на монтажа. Потребителят ще вижда задачи под формата на превключватели и ще може да избере дали да изпълни една или друга задача или не. Пример:

[Задачи] Име: desktopicon; Описание : "Създаване на икона на &работен плот" ; GroupDescription : "Допълнителни икони:" ; Компоненти: основно име: desktopicon\common; Описание : "За всички потребители" ; GroupDescription : "Допълнителни икони:" ; Компоненти: основен; Флагове : изключително име : desktopicon\user; Описание : "Само за текущия потребител" ; GroupDescription : "Допълнителни икони:" ; Компоненти: основен; Флагове : изключително неотметнато Име : quicklaunchicon; Описание : "Създаване на икона за &бързо стартиране" ; GroupDescription : "Допълнителни икони:" ; Компоненти: основен; Флагове : неотметнато Име : сътрудник; Описание : "&Асоцииране на файлове" ; GroupDescription : "Други задачи:" ; Флагове: без отметка

– този незадължителен раздел указва кои допълнителни папки, в допълнение към папката с приложението, трябва да създадете.

[ Dirs ] Име: "(app)\data" Име: "(app)\bin"

– незадължителен раздел, който определя кои файлове ще бъдат инсталирани на компютъра.

[Файлове] Източник: "CTL3DV2.DLL"; DestDir: "(sys)"; Флагове : onlyifdoesntexist uninsneveruninstall Източник : "MYPROG.EXE" ; DestDir : "(приложение)" Източник : "MYPROG.CHM" ; DestDir : "(приложение)" Източник : "README.TXT" ; DestDir: "(приложение)"; Флагове: readme

– опционална секция, която определя какви преки пътища ще се създават в менюто Старт, на работния плот и др.

[ Икони ] Име : "(група)\Моята програма" ; Име на файл: "(приложение)\MYPROG.EXE" ; WorkingDir : "(приложение)" Име : "(група)\Деинсталиране на моята програма" ; Име на файл: "(uninstallexe)"

– незадължителен раздел, който определя кои записи ще бъдат добавени към INI файла.

[INI] Име на файл: "MyProg.ini"; Раздел : "InstallSettings" ; Флагове : uninsdeletesection Име на файл : "MyProg.ini" ; Раздел : "InstallSettings" ; Ключ : "InstallPath" ; Низ: "(приложение)"

и - тези незадължителни раздели определят кои файлове или папки трябва да бъдат премахнати, съответно, при първото инсталиране или деинсталиране. Пример:

[UninstallDelete] Тип: файлове; Име: "(win)\MYPROG.INI"

– разделът определя езиците, които ще бъдат налични по време на инсталацията. Когато стартирате инсталатора, ще бъде избран език, който съответства на езика на системата. В противен случай по подразбиране ще се използва езикът, разположен първи в раздела. Пример:

[Езици] Име: "en"; MessagesFile : "compiler:Default.isl" Име : "nl" ; MessagesFile: "compiler:Languages\Dutch.isl"

– раздел за замяна на съобщения, описани в езикови .isl файлове. Пример за замяна на стандартния текст „&Напред >“ върху бутон за преминаване към следващата стъпка само за английски:

[ Съобщения ] en.ButtonNext =&Напред >

– раздел за определяне на стойностите на константата (cm:...), вижте описанието на константите по-горе. Пример за употреба:

[ CustomMessages] CreateDesktopIcon=Създаване на &икона на работния плот [ Задачи ] Име : desktopicon; Описание : "(cm:CreateDesktopIcon)"

– разделът съдържа езикови настройки, като например шрифт. Пример:

[ LangOptions ] LanguageName=Английски LanguageID=$0409 LanguageCodePage=0 DialogFontName= DialogFontSize=8 WelcomeFontName=Verdana WelcomeFontSize=12 TitleFontName=Arial TitleFontSize=29 CopyrightFontName=Arial CopyrightFontSize=8 RightToLeft=не

– Този незадължителен раздел определя кои ключове и стойности трябва да бъдат създадени, модифицирани или изтрити в системния регистър. Примери за използване:

[Регистър] Корен: HKCU; Подключ : "Софтуер\Моята фирма" ; Флагове: uninsdeletekeyifempty Корен: HKCU; Подключ: ; Флагове: uninsdeletekey Основен: HKLM; Подключ : "Софтуер\Моята фирма" ; Флагове: uninsdeletekeyifempty Основен: HKLM; Подключ : "Софтуер\Моята компания\Моята програма" ; Флагове: uninsdeletekey Основен: HKLM; Подключ : "Софтуер\Моята компания\Моята програма\Настройки" ; ValueType: низ; ValueName : "InstallPath" ; ValueData: "(приложение)"

– този незадължителен раздел определя кои програми трябва да се изпълнят след успешно инсталиране, но преди последната стъпка да се появи в прозореца на съветника за инсталиране. Примери:

[ Изпълнение ] Име на файл : "(приложение)\INIT.EXE" ; Параметри: "/x" Име на файл: "(app)\README.TXT"; Описание : "Вижте файла README" ; Флагове: postinstall shellexec skipifsilent Име на файл: "(приложение)\MYPROG.EXE"; Описание : "Стартиране на приложение" ; Флагове: postinstall nowait skipifsilent без отметка

– този незадължителен раздел определя кои програми трябва да се изпълнят в самото начало на деинсталирането.

– в този незадължителен раздел можете да поставите своя Pascal скрипт. Машината RemObjects Pascal Script се използва за обработка на скрипта Pascal. Този двигател е толкова безплатен, колкото Inno Setup. Официална страница на системата RemObjects Pascal Script - . Примери за използване могат да бъдат намерени във файловете „Code*.iss“ и „UninstallCode*.iss“ в папката „Examples“ в мястото за инсталиране на Inno Setup.

Процедура за инсталиране и деинсталиране

Много важен моментпо време на инсталацията, това е разбиране на реда, в който се изпълнява скриптът. Стъпките на инсталатора са изброени по-долу в реда, в който ще бъдат изпълнени по време на инсталацията:

      • Изпълнение на секция.
      • Елементите на секциите се записват в дневника за деинсталиране (който на този етап се съхранява в паметта).
      • Ако е необходимо, се създава директория с приложения.
      • Работят секции.
      • Името на регистрационния файл за деинсталиране е запазено, ако е необходимо.
      • Секцията работи (файловете все още не се регистрират).
      • Секцията работи.
      • Секцията работи.
      • Секцията работи.
      • Файловете, които трябва да бъдат регистрирани, се регистрират, освен ако системата не трябва да се рестартира. В случаите, когато е необходимо рестартиране, регистрацията става само след рестартиране на системата.
      • Добавете към списъка с инсталирани програми (Контролен панел\Програми\Програми и функции), ако е необходимо.
      • Елементите на секциите се записват в дневника за деинсталиране.
      • EXE файлът и регистрационният файл на програмата за деинсталиране се записват на диск. След тази точка на потребителя е забранено да анулира инсталацията и всички последващи грешки няма да доведат до връщане на инсталацията.
      • Изпълнение на раздела, с изключение на елементите на раздел с зададен флаг „след инсталиране“, които ще бъдат изпълнени след показване на последната стъпка от съветника за инсталиране.
      • Актуализирайте асоциациите за файлове, ако флагът "ChangesAssociations" е зададен на "yes".
      • Уведомява изпълняваните приложения, че променливите на средата са се променили, ако флагът ChangesEnvironment е зададен на да.
      • Що се отнася до елементите на раздела, те ще бъдат изпълнени в реда, в който са разположени в рамките на раздела.

Деинсталирането става в обратен ред. Но това не се отнася за секциите и, които ще бъдат изпълнени в реда, в който се появяват в скрипта (не в обратен ред).

Настройка на препроцесора Inno

Бих искал да напиша няколко думи за препроцесора Inno Setup (ISPP). Основната цел на препроцесора е да автоматизира задачите по време на компилация и да намали вероятността от печатни грешки във вашите скриптове. Например, можете да декларирате променлива ISPP (променлива по време на компилиране), съдържаща името на вашето приложение, и след това да използвате стойността на тази променлива на множество места във вашия скрипт. Ако по-късно трябва да промените името на вашето приложение по някаква причина, можете да го направите на едно място във вашия скрипт. Без ISPP ще трябва да намерите и коригирате всички части на скрипта, където използвате името на приложението, като AppName, AppVerName, DefaultGroupName и т.н.

Друг пример за използване на ISPP е да изтеглите информация за версията на приложението от EXE файл и да я използвате в оператора AppVerName в раздела. Без ISPP ще трябва да променяте скрипта всеки път, когато се промени версията на приложението.

В допълнение, разделянето на скрипта на части прави възможно създаването на един скрипт за различни версии на вашето приложение (например пробни и пълнофункционални версии).

Когато използвате препроцесор, важно е да запомните, че препроцесорът работи само по време на компилиране.

Извикване на компилатора на Inno Setup от командна линия

Също така би било полезно да знаете за възможността за компилиране на дистрибуцията от командния ред. Обаждането за компилация изглежда така:

compil32/cc

Ето един пример:

compil32 /cc "c:\isetup\samples\my script.iss"

Извикване на компилация от командния ред, в в такъв случай, не скрива напредък или съобщения за грешки. Компилаторът връща 0, ако компилирането е било успешно, 1, ако параметрите на командния ред са предадени неправилно, или 2, ако компилирането е неуспешно.

Алтернативен метод за компилиране е използването на конзолния компилатор ISCC.exe. Ето диаграма как да използвате компилатора:

iscc [опции]

Ето един пример:

iscc "c:\isetup\samples\my script.iss"

Ето основните опции:

/DO – забранява създаването на разпространение (променя всички изходни параметри в скрипта).
/EO – разрешава създаването на дистрибуция (променя всички изходни параметри в скрипта).
/O – задава пътя, където ще бъде създадена дистрибуцията (променя всички параметри на OutputDir в скрипта).
/F – задава името на файла за разпространение (променя всички параметри на OutputBaseFilename в скрипта).
/S – настройка на параметъра SignTool.
/Q[p] – за скрита компилация (показват се само съобщения за грешка, “p” показва напредъка).
/? – за показване на помощ.

Ето пример за използване на опции:

iscc /Qp /O"My Output" /F"MyProgram-1.0 " /Sbyparam=$p "c:\isetup\samples\my script.iss"

ISCC връща 0, ако компилацията е била успешна, 1, ако параметрите са неправилно посочени или Вътрешна грешка, или 2, ако компилацията е неуспешна.

В заключение за Inno Setup

Няма да е възможно да се говори за всички възможности на Inno Setup в една статия; това е много голямо количество информация, така че тук описах само основните точки. След като прочетете това, можете да започнете да използвате този удивителен инструмент, за да създавате свои собствени дистрибуции. В бъдеще ще говоря за алтернативни потребителски интерфейси. Сега напишете вашите коментари за статията и аз ще се опитам да отговоря на всички ваши въпроси.

Част 1

Запознаването на потребителя с програмата най-често започва със стартирането на инсталатора. Външният вид („опаковка“) и функционалността на продукта се определят от разработчика. Потребителят трябва да може да контролира процеса, като зададе необходимите инсталационни параметри. За разработчика е важно поне неговата програма да е инсталирана правилно и инсталаторът да е съвместим с необходимите платформи.

Има много решения за създаване на инсталатори. Най-често се използва Windows подсистемаИнсталатор, който вече е включен в инструментариума на операционната система. Но също така има алтернативни решения- платени и безплатни, с различна функционалност. Често те могат да се използват за създаване на пакети с инсталатор, който не зависи от Windows Installer.

Ръководството включва всички видове системи за създаване на инсталатори, основните аспекти на техния преглед са следните:

  • Среда за разработка, интерфейс, поддръжка на скриптове
  • Работа с проект, видове създавани пакети, възможности за импортиране на проекти от други среди за разработка
  • Персонализирани опции за инсталиране: поддръжка на езици, профили и други опции
  • Поддръжка на разширение
NSIS (система за инсталиране на Nullsoft Scriptable)

NSIS е безплатен и широко известен инструмент за създаване инсталационни пакетив Windows среда. Отличителни характеристики са компактност, мащабируемост, поддръжка на плъгини и локализации. Други функции на NSIS: поддръжка на скриптове, различни опции за инсталиране (включително множество проекти в рамките на един инсталатор), създаване на уеб инсталатори.

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

Синтаксисът на езика NSIS е доста прост и лесен за четене и основната документация за него е налична. Освен това програмата включва голям бройпримери (файловете във формат nsi са налични в папката Примери). Всеки редактор на код е подходящ за редактиране на nsi скриптове, където можете да включите подчертаването на синтаксиса без много усилия. Много задачи могат да бъдат незабавно обединени, ако използвате специален плъгин за Eclipse IDE или . Venis е интуитивна визуална среда за създаване на сценарии.

Удобно е да работите с NSIS във връзка с други програми, например (вижте по-долу).

Ако има нужда от разширяване на възможностите на инсталатора, можете да добавите определени функции. Добавките са написани на C, C++, Delphi или други езици. Готови примериналични разширения. Функциите са разнообразни: от визуални ефектиинсталатор, преди да създадете корекции и да извикате Windows API.

Можете да компилирате инсталатора с помощта на инструмента makensis, като предварително сте избрали типа компресия - ZLib, BZip2 или LZMA. Освен това самият инсталатор заема малко място - само 34 KB.

Графичният интерфейс на инсталатора се предлага в една от двете версии - класическа или модерна. По-функционален Модерен (на този моментизползва се неговата версия 2.0) ви позволява да създавате страници на съветника за инсталиране, като използвате текст, шрифтове, изображения, диалогови прозорци, опции и т.н. На този етап програмата ще ви помогне. Тя ви позволява бързо да проектирате интерфейс и да запазите получения резултат във формат nsdinc, който след това може лесно да бъде интегриран в .nsi скрипт.

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

Настройка на Inno

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

Скриптовете имат структура, типична за конфигурационните файлове във формат ini, така че кодът е доста четим и лесен за редактиране. Документът е разделен на раздели, като всеки от тях отговаря съответно за конкретна задача на инсталатора. Има два вида секции - с параметри и „директивна стойност“.

Разработчиците, запознати с Pascal, ще се възползват от факта, че Inno използва „сроден“ език - . Скриптовете са отговорни за добавяне на нови опции, създаване на интерфейс, извикване на файлове или библиотеки, персонализирани действия и т.н. Работната папка Inno Setup съдържа примерни скриптове (достъпни също в менюто на компилатора). По подразбиране Inno Setup включва компилатора на скриптове IDE Compiler. За бърз старт се препоръчва също така да инсталирате Inno Script Studio. Този редактор на проекти е включен в изданието QuickStart Pack, можете да го изтеглите. За опростяване на задачите може да бъде полезен визуален редактор на скриптове.

Най-лесният начин да създадете инсталатор е да използвате стъпка по стъпка съветника за настройка на Inno Script Studio. Тук можете да намерите информация за продукта, програмни координати, лицензен файл и други данни, езици за локализация и опции за компилатор. Впоследствие проектът е достъпен за компилиране, отстраняване на грешки или модифициране на получения скрипт в прозореца на редактора.

Редакторът Inno Script Studio е достъпен на руски език. Много по-лесно е да конфигурирате проекта последователно, преминавайки през секции, вместо да създавате скрипт от нулата. При добавяне на нов елемент се правят промени в кода на скрипта, синтаксисът се маркира и кодът се разделя по подходящ начин на секции (, , ...).

Секциите на редактора не са групирани, но структурата е доста разпознаваема. Логически те могат да бъдат разделени, както следва:

  • Съдържание на разпространение: файлове, директории, икони, INI файлове, Регистър
  • Съобщения и потребителски съобщения,
  • Потребителски опции: Типове, Компоненти, Задачи, Езици
  • Действия: Изпълнение, Премахване преди инсталиране, Изпълнение преди деинсталиране, Премахване след деинсталиране
  • Код на скрипта: код на Pascal, стъпки преди компилация, стъпки след компилация

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

Други функции на Inno Setup включват тихо инсталиране и деинсталиране. Потребителят има различни видове инсталация и локализация, от които да избира. Инсталаторът може да бъде криптиран, цифрово подписан или защитен с парола. Bzip2 или LZMA/LZMA2 компресия може да се приложи към дистрибуцията. Интерфейсът е в стил 2000/XP, няма други опции.

Резюме . Inno Setup е най-близката алтернатива на NSIS. Позволява ви да използвате както мощен скриптов език, така и удобен и много адаптивен редактор, Inno Script Studio, наличен почти веднага.

IzPack

Най-често средата за разработка на инсталатора е присвоена на конкретна платформа и разработчикът е принуден да използва различни инструменти за всяка от тях. IzPack решава проблема с крос-платформата, използвайки универсалната среда за разработка на Java за своите нужди.

Основни характеристики на IzPack: XML синтаксис, интеграция с различни инструментикомпилация, прост и гъвкав API, възможности за локализация.

Сред характеристиките на инсталаторите, създадени с помощта на IzPack, са малкият размер и модулността. Дистрибуцията е базирана на XML документ, който посочва всички необходими спецификации и дефинира функционалността на продукта. Впоследствие конфигурационният файл се обработва от произволен по удобен начин, за това използвате командния ред или . За да увеличите функционалността на инсталатора, можете да използвате IDE среди, като Eclipse, IntelliJ IDEA или Netbeans. Всеки редактор на код е подходящ за създаване на конфигурационен файл.

XML документът посочва информация за проекта (), интерфейс (), локализация (), файлове (), ресурси (), панели (), съдържание (- може да бъде пакетирано в raw, gzip, bzip2) и т.н. Що се отнася до java , IzPack има възможност за прилагане на действия (персонализирани акриони) и променливи - вградени, потребителски и променливи на средата(средства за масова информация ).

За създаване GUIпанелите са предназначени за монтажника. С тяхна помощ появата на началния екран, съдържанието, текстова информация(readme, лицензи), изображения. Поддържат се различни видове интерактивни елементи (полета, ключове и т.н.), локализация, включително руски. Както интерфейсът, така и съдържанието могат да бъдат преведени.

За създаване на саморазархивиращи се модули се използва методът 7-Zip SFX, използвайки възможностите на добре познат архиватор. Обвивката, наречена izpack2app, също е налична за Mac OS. Освен това е възможно да се създаде уеб инсталатор за тези цели, има обвивка izpack2jnlp, която използва възможностите на Java Web Start. IzPack поддържа опция за тиха инсталация.

Резюме . IzPack е една от малкото кросплатформени системи за създаване на инсталатори. Процесът на писане на конфигурация, компилиране и отстраняване на грешки е удобен поради интеграцията със среди за разработка и е лесен за научаване. Сред недостатъците трябва да се отбележи, че полученият инсталатор е значително остарял (а не оригинален - роден).

Инсталатор на Excelsior

Excelsior Installer е безплатна програма, предназначена за създаване на инсталатори и актуализации. Основните характеристики са проста интуитивна графична обвивка, възможност за интегриране с Explorer и NSIS.

Създаването на разпространение или актуализация се извършва с помощта на Packager. Той съдържа съветник стъпка по стъпка, съдържащ настройки на проекта. Въз основа на проекта е много лесно да се компилира инсталатор в осем стъпки. Според описанието това може да стане само с две щраквания на мишката, но в пакета трябва да бъдат дефинирани следните параметри:

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

Пакерът се състои от секции Файлове, Настройки и Външен вид. Като цяло това съдържа стандартен списък с опции, отговорни за създаването лицензионно споразумение, избор на инсталационна директория, преки пътища, ключове в регистъра и други параметри. Ако изучавате продуктите, е лесно да откриете следната функционална „пропуск“: инсталаторът не поддържа файлови асоциации, DLL разширения или контроли.

Относно налични опцииинсталатор - можете да посочите инсталационен профил в зависимост от привилегиите на текущия потребител. Инсталаторът поддържа локализация, а руският език е наличен от кутията, останалото се изтегля отделно. Възможна автоматична - тиха - инсталация без изискване на данни от потребителя, след инсталация - проверка на целостта на пакета или други персонализирани действия.

Както вече споменахме, възможна е интеграция на Excelsior с NSIS. Excelsior Installer всъщност действа като пълноправен GUI за NSIS настройките на проекта се експортират без проблеми.

Заедно с този участник в прегледа, струва си да се подчертае друг свързан продукт - Excelsior Delivery. В по-голямата си част функциите на Excelsior Installer се дублират. Но има и няколко допълнителни функции: добавяне на OLE и ActiveX елементи, файлови асоциации, библиотеки към системата, създаване на потребителски проучвания. Лицензираната версия на Excelsior Delivery ($99) също ви позволява да приложите марка към инсталатора. Ако тази опция не е важна, можете да изтеглите некомерсиална версия на програмата.

Резюме . Excelsior Installer - прост и много ясна системаза създаване на дистрибуции, може да се използва като добавка към NSIS. Другата страна на монетата е средната функционалност както на Excelsior Installer, така и на Delivery.

WiX Toolset

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

Ядрото на WiX се състои от компилатор (свещ), линкер (светъл), библиотекар (осветен), декомпилатор (тъмен), инсталационен bootstrapper (изгаряне) и други помощни програми. С тяхна помощ можете да създавате инсталационни пакети.msi, да обединявате модули.msm, patches.msp.

Създаването на инсталатор се състои от няколко основни етапа: разработване на скрипт, проверка, обработка с препроцесор, компилиране и свързване. Платформата MSBuild се използва за изграждане на инсталатора и автоматизацията като цяло. Автоматизацията е едно от основните предимства на WiX при работа с доста ресурсоемки проекти.

Изходният код има XML формат(файлово разширение wx). Скриптът описва всички етапи на инсталиране, започвайки с описание на проекта и завършвайки с действия след инсталирането. Можете да го редактирате във всеки редактор, който поддържа този формат.

WiX радва със своите възможности за интеграция: WiX Toolset предоставя интерфейс на командния ред. За да работите с проект във Visual Studio (модул IntelliSense), ще ви трябва .

В трудни ситуации или при липса на време за изучаване на скриптове, графичната обвивка ще бъде от полза. Основните му предимства са импортиране на съществуващи wxs проекти, структуриране на xml данни с лесно четене и навигация. С помощта на съветника също е лесно да създадете инсталационен файл от нулата. Освен това това далеч не е единственият такъв инструмент (вижте).

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