Статья: Инсталляция by NSIS

В инсталляционной секции мы объявим две подсекции, которые будут отвечать соответственно за установку главной программы и СУБД, а также дополнительных модулей:

Здесь мы сперва задаем директорию в которую будут записаны все файлы объявленые после нее (команда SetOutDir). Теперь к этой директории можно обращаться через переменную $OUTDIR. Далее – отдаем приказ на копирование в инсталляционный пакет всех файлов находящихся в директории D:\Projects\DelphiProjects\Firebird\bin (обратите внимание, что система допускает использование символов wildcards, что значительно уменьшает код и выглядит более наглядно). Следующая строка записывает в директорию программу для деинсталяции приложения. Затем мы используем команду WriteRegStr для создания раздела нашей программы в системном реестре.

В следующей подсекции мы также устанавливаем директорию в которую будет проводится запись дополнительный программ. Далее выбираем файлы midas.dll и dbexpint.dll и помещаем их в пакет (при инсталляции они появятся в директории нашей программы). После этого мы записываем СУБД Firebird и по команде ExecWait запускаем ее и ждем ее окончания. В конце секции мы удаляем файл с СУБД из директрии нашей программы.

В раздел описаний мы поместим две строки, которые будут кратко характеризировать наши компоненты:

В результате мы получим текст изображенный на рис.3,4. Как видно из текста для присвоения этих описаний нашим секциям мы используем их имена заданные при объявлении соответствующих секций.

Последняя – секция деинсталяции. Эта секция будет выполнена только при запуске файла Uninstall.exe, который мы сформировали в разделе инсталляции. Суда мы записываем все команды по удалению файлов, директорий, и очистке реестра:

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

Компиляция

Так, файл инсталляции мы написали. Теперь же нам предстоит собрать из него экзешник. Для этого в составе пакета NSIS входят два приложения: makensis.exe и makensisw.exe. Первое – работает из командной строки и подойдет тем, кто пользуется для сборки своих приложений утилитой make или подобными ей. Второе – полноценное Windows – приложение.

Сборка нашего пакета происходит в считанные минуты. Мой пакет размером в 4Мб при использовании самого крутого LZMA сжатия собирался за 58,2с. При этом размер дистрибутива составил 4.65Мб, а при стандартной упаковке архива pkzip-ом с таким же содержимым результат составил – 4.73Мб.

Кроме этого компилятор позволяет выбирать между разными методами сжатия: zlib, bzip2, lzma. Есть также вариант автоматического выбора наилучшего упаковщика и использование упаковщика указанного в исходном файле.

Послесловие

Использование программ-инсталляторов сегодня – это уже не дань моде, а порой единственная возможность донести своё творение до конечного пользователя. В этой категории программного обеспечения одним из наиболее простых и понятных в работе является основанный на бесплатной GNU лицензии пакет NSIS который предлагает массу разных способов установки приложения на клиентскую машину. А применение при его создании плагинов позволяет еще больше раздвинуть границы его применения.

К-во Просмотров: 231
Бесплатно скачать Статья: Инсталляция by NSIS