Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #53, АПРЕЛЬ 2005 г.

Спец по установке

Денис Колисниченко

Спецвыпуск: Хакер, номер #053, стр. 053-052-1


(dhsilabs@mail.ru)

Создание инсталлятора для твоей программы

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

Выбираем софт

Ясно, что своими руками писать инсталлятор мы не будем, поскольку это лишние затраты времени, которые никто не оценит. Разве что у тебя настолько уникальная программа, что ни один инсталлятор не сможет ее правильно установить, поскольку "не знает" всех ее особенностей. Тогда эта статья не для тебя, поскольку в ней будут рассмотрены популярные стандартные решения для создания инсталляторов, а именно InstallShiled для Delphi, Visual Studio Installer, Setup Factory и InnoSetup. Конечно, твой выбор не ограничивается этими программами, но они были выбраны как одни из самых лучших в своем классе.

Скорее всего, ты когда-нибудь использовал одну или несколько программ для создания инсталляторов. Если ты использовал две-три или более таких программ, то, наверное, замечал, что эти программы бывают трех типов: "автоматизированные", "ручные" и "полуавтоматизированные". Первые представляют собой мастер (или его пошаговое подобие с возможностью выбирать шаг создания инсталлятора), создающий проект инсталлятора. Примером программ такого типа может стать InstallShield для Delphi. Второй тип программ подразумевает создание разработчиком (то есть тобой) специального скрипта, на основании которого будет создан инсталлятор. Скрипт описывает этапы установки программы и их последовательность. Примером второго типа программ может послужить не рассмотренная в статье программа WISE. Третий тип программ – это своеобразный симбиоз первого и второго типов. Программы третьего типа обладают собственным мастером, который "пишет" скрипт. Ты можешь откомпилировать этот скрипт сразу или немного изменить его, подправив, например, ключ реестра или другую информацию, а потом уже компилировать. Большинство современных программ для создания инсталляторов относятся именно к третьему типу.

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

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

Содержание  Вперед на стр. 053-052-2