Домой / Обзоры / Inno Setup – создание инсталляторов для программ. Создание дистрибутива Windows приложения в Inno Setup Создание setup файла

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

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

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

На самом деле тихая установка - это очень удобная процедура, которая экономит время и упрощает жизнь системного администратора. Я, например, использую режим silent install после чистой установки ОС.

Режим тихой установки включается при помощи параметров или (как их ещё называют) ключей. Если вы не знаете, что это такое, можете восполнить пробел в знаниях при помощи этой статьи: . Запуск процедуры можно осуществить несколькими способами:

  1. Из командной строки, используя параметры.
  2. Аналогично через bat-файл (com-файл).
  3. Через SFX-архив с файлом конфигурации.

Ключей достаточно много. Какой именно ключ нужно использовать зависит от установщика. Т.е. любая программа, говоря простым языком, это папка с файлами, а запаковывает всё это добро в один файл установки специальный сборщик (система создания установщиков ПО). И вот от того, какой сборщик использовался, зависит - какой ключ будет вызывать режим тихой установки. Наиболее известные системы создания установщиков:

  1. Install Shield
  2. WISE Installer
  3. Inno Setup

Подробнее о ССИ и их ключах можно . Также можно попробовать найти нужный ключ с помощью специального ПО - Universal Silent Switch Finder или почитать документацию на сайте разработчиков той программы, ключи к которой вы ищите.

Во время экспериментов с тихой установкой мне встречались следующие параметры запуска режима тихой установки:

/silent /verysilent /quiet /qb /qn /qr /passive /s /S /qn REBOOT=ReallySuppress /s /v" /qn REBOOT=ReallySuppress

Ключи для отмены перезагрузки:

/norestart /noreboot

Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (Home) версии по заявлениям разработчиков тихой установки нет. Однако, если вы в курсе как работает инсталятор InstallShield , вы поймете, что это утверждение не соответствует действительности, поскольку этот инсталятор сам по себе поддерживает ключ тихой установки /S . А значит все продукты, выполненные на его базе - тоже. И Avast Home не исключение.

Для запуска тихой установки архиватора 7Zip (сборщик NSIS) нужно запустить установщик с ключом /S . Положите установщик 7Zip (7z.exe) в корень диска С. Затем откройте меню Пуск › Выполнить (или + R ) и введите в форму следующую команду:

C:7z.exe /S

Архиватор установится без диалоговых окон и признаков внешней активности.

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

Тихая установка с помощью sfx-архивов

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

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

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

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

Чтобы в общих чертах представить конфигурационный файл (для тех, кто не в курсе) ниже приведён пример такого файла для программы Firefox Portable

FirefoxDirectory =Appfirefox ProfileDirectory =Dataprofile SettingsDirectory =Datasettings PluginsDirectory =Dataplugins FirefoxExecutable =firefox.exe AdditionalParameters = LocalHomepage =index.html DisableSplashScreen =false AllowMultipleInstances =false DisableIntelligentStart =false SkipCompregFix =false RunLocally =false

Стоит отметить, что возможности и режимы работы программ со временем могут меняться. Firefox Portable может перестать поддерживать ini-файлы, а будущие версии инсталятора Avira - понимать и подхватывать файлы инструкций. Поэтому при экспериментах стоит ознакомиться с актуальной информацией о возможностях программ, которые вы планируете использовать.

Как sfx-архив может помочь процессу тихой установки, я думаю, мы разобрались. Теперь настало время перейти к практической части. Для создания sfx-архивов я пользуюсь доработанным модулем архиватора 7Zip . Весь процесс создания sfx-архива и запуска при помощи него режима тихой установки описан (разработчика модуля). Я же очень кратко перескажу написанное в ней, пояснив пару моментов.

Сразу отмечу, что цель примера - запаковать установщик программы в sfx-архив таким образом, чтобы он после распаковки автоматически начинал устанавливаться по-тихому. В данной статье в качестве подопытного будет выступать установщик архиватора 7Zip (7z465.exe), хотя можно использовать любой другой, главное знать ключ тихой установки. У установщика 7Zip это ключ /S . Итак, для исполнения задуманного нам понадобится:

  1. Модуль sfх Олега Щербакова.
  2. Архиватор 7Zip . Им мы будем запаковывать установщик программы в архив формата ".7z". Архиватор, понятное дело, надо установить в систему.
  3. Установщик программы (как я отметил выше, в примере я использую 7z465.exe).
  4. Архив.7z , который мы получим, запаковав установщик программы архиватором 7Zip.
  5. Конфигурационный файл config.txt, в котором будут содержаться иструкции "поведения" sfx-архива при распаковке, т.е. в данном примере в нём будет содержаться команда на запуск тихой установки.
    Заклинание для создания sfx-архива (вводится в консоли).

Для удобства я положил все ингредиенты в один архив, который вы можете скачать . Также, если скачать вот , можно поменять иконку архива (как это сделать ).

Обратите внимание, кодировка файла конфигурации config.txt должна быть UTF-8.

Итак, получаем после скачивания и распаковки папку со всем этим добром, далее по списку:

  1. Устанавливаем архиватор 7zip (лежит в папке).
  2. Запаковываем подопытного 7z465.exe (лежит в папке) в 7z-архив. Получаем на выходе файл 7z465.7z.
  3. Открываем консоль (Пуск › Выполнить - cmd) и переходим в папку с файлами: cd C:files (пример для папки "files" на диске "С").
  4. Запускаем в консоли заклинание:
    • COPY /b 7zsd.sfx + config.txt + 7z465.7z 7Zip.exe
    • 7zsd.sfx - имя модуля sfx.
    • config.txt - имя файла конфигурации.
    • 7z465.7z - имя запакованного установщика 7z465.exe.
    • 7Zip.exe - имя sfx-архива на выходе.

В результате получаем sfx-архив 7Zip.exe, который представляет собой исполняемый файл или самораспаковывающийся архив, внутри которого содержится инструкция config.txt. Содержание инструкции следующее:

;!@Install@!UTF-8! RunProgram ="7z465.exe /S" GUIMode ="2" ;!@InstallEnd@!
  • ;!@Install@!UTF-8!
    ;!@InstallEnd@! - строки начала и конца файла инструкции. Это комментарии, их можно удалить. А вот остальные две нужны обязательно.
  • GUIMode="2" - режим распаковки архива без оповещений (по-тихому).
  • RunProgram="7z465.exe /S" - строка инструкции, в которую необходимо вносить изменения в зависимости от того, какой установщик вы используете. В строке прописывается имя установщика, который запаковывается в 7z-архив и который требуется установить по-тихому + ключ тихой установки.

На этом всё. Ознакомившись со статьями Олега (ссылки выше), можно создать различные архивы, выполняющие абсолютно разные задачи. Удачных экспериментов!


InstallShield предоставляет собой среду для настройки проекта, создания сценария и конечного релиза дистрибутива - как в MSI-, так и в различных виртуальных форматах. Это одно из наиболее известных решений в области создания инсталляторов для платформы Windows. Существует три редакции комплекса - Express, Professional и Premier. Последняя из них считается наиболее функциональной (см. ). Не так давно был выпущен обновленный пакет InstallShield 2014, о котором далее пойдет речь.

Проекты могут быть импортированы из Microsoft Visual Studio или созданы на основе имеющихся шаблонов. При создании проекта с нуля на выбор доступен один из нескольких типов:

  • Базовый MSI-проект - используется технология Windows Installer, доступен вызов InstallScript-, VBScript-, Jscript-скриптов, exe- и dll-файлов.
  • Проект InstallScript - InstallScript используется для контроля установки
  • InstallScript MSI-проект - совместное использование Windows Installer и InstallScript для развертывания установки.

В свою очередь, для каждого из указанных типов имеется множество дополнительных проектов. В целом, кроме инсталляторов, комплекс позволяет создавать модули объединения (Redistributable), а также модификаторы (Transform).

Есть несколько вариантов начала работы в InstallShield, один из них - воспользоваться пошаговым мастером настройки (Project Assistent), который запускается автоматически при создании нового проекта. Более детальная конфигурация осуществляется в окне дизайнера установки. Настройки сгруппированы следующим образом:

  • Информация об установке (Installation Information) - таблица с общей информацией о проекте. Здесь, в частности, можно выбрать язык инсталлятора по умолчанию. Всего InstallShield поддерживает более 30 локализаций.
  • Organization (Организация) - включает в себя дизайн установщика, список функций и компонентов, которые будут представлены пользователю на выбор при установке.
  • Application Data (Данные приложения) - данные приложения, такие как файлы, модули и зависимости. Часть компонентов может быть установлена локально, другие необходимо скачивать во время установки.
  • System Configuration (Системная конфигурация): ярлыки, ресурсы, конфигурационные файлы, сервисы и др.
  • Server Configuration - конфигурация сервера в соответствии с требованиями инсталлятора. Сюда входят настройки IIS, сервисы компонентов, SQL-скрипты для SQL Server, Microsoft Windows Azure, MySQL, или Oracle. Используя Microsoft Web Deploy, можно скачивать зависимости, запускать скрипты, выполнять задания на сервере.
  • Behavior and logic (Поведение и логика) - скрипты, действия, файлы для инсталляции и др.
  • User Interface (Пользовательский интерфейс) - дизайн инсталлятора, включая оформление диалогов, изображения, текст и прочие данные. На выбор доступны темы оформления, очень гибкая настройка уже имеющихся диалогов вплоть до перетаскивания каждого элемента. Построчный редактор позволяет работать с локализациями.
  • Media - управление переменными окружения, настройка обновлений и релизов продукта, патчи.
  • Дополнительные инструменты (Additional Tools): сканнер файловых зависимостей, MSI-отладчик и прямой редактор, предназначенный для просмотра структуры проекта в виде таблицы.

В качестве скриптового языка для создания инсталляторов выступает InstallScript, имеющий сходство с языком C и позволяющий создавать пользовательские действия (Custom Actions). Тем самым, скрипты помогают при вызове dll-библиотек, запуске приложений, VBScript-, Jscript-, InstallScript- скриптов и мн. др.

Для правки кода в InstallShield используется редактор с подсветкой синтаксиса и автодополнением. Кроме того, для создания действий может использоваться мастер пользовательских действий (Custom Action Wizard).

Резюме . Бесспорно, InstallShield является одним из лидирующих продуктов на рынке инсталляционных комплексов. Его наиболее сильная сторона заключается в гибкости, что позволяет создавать многочисленные типы инсталляторов для развертывания на компьютере или сервере, с поддержкой сценариев. От домашнего использования может отпугнуть достаточно высокая цена лицензии для каждой из редакций, начиная с InstallShield Express ($649).

Setup Factory


Компания Indigo Rose Software Design выпускает продукты для разработки, начиная с 1991 года. Среди них - MSI Factory, TrueUpdate, Visual Patch и смежные решения. Setup Factory - еще один комплекс, позволяющий создавать полнофункциональные скриптовые инсталляторы - но, в отличие от MSI Factory, независимые от MSI. При этом полученный дистрибутив может быть запущен под любой версией Windows, начиная с XP. Доступны альтернативные варианты распространения - установка с CD- или DVD-носителя, веб-инсталлятор с возможностью скачивания зависимостей. Поддерживаются форматы компрессии LZMA/LZMA2 и файлы размером более 2 ГБ.

Инсталляционная среда Setup Factory использует простой, гибкий и мощный скриптовый язык, основанный на языке LUA. Это позволяет задействовать условия, функции, переменные, таблицы и другие средства при написании сценария.

Для создания инсталлятора предусмотрен традиционный пошаговый мастер. Он состоит из следующих этапов работы с проектом: заполнение общей информации об инсталляторе, выбор архитектуры, расположения файлов, стиля и темы оформления, языков установки, состав библиотек.

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

Управление скриптами осуществляется через секцию Actions. Все действия делятся на несколько этапов, в хронологическом порядке: запуск, процесс установки и возникновение ошибок на данном этапе, окончание установки и завершение работы.

Для составления действий (actions), пользователям предоставлены надстройки Action Wizard и Code Wizard. Всего доступно около 360 скриптов, при этом, каждое действие тщательно задокументировано в хорошо структурированной справке. Параллельно с этим, основная работа с кодом ведется в окне редактора. Подсветка кода и нумерация строк в наличии, для проверки сценария на ошибки можно использовать встроенные средства Setup Factory.

Функциональность инсталлятора расширяется за счет ресурсов. В соответствующем разделе Resources можно указать зависимости (.NET, Visual Basic, DCOM, JET, MDAC, Windows Installer, Visual C++ и пр.), установить глобальные функции и подключить плагины для работы с буфером обмена, архивами, FTP. Кроме того, на форуме разработчика выложены дополнительные расширения.

Удобство редактора проектов заметно при работе с локализациями: можно не только добавить язык интерфейса, но также импортировать или экспортировать данные в XML. Каждый аспект инсталлятора поддается настройке и доступен в режиме предосмотра: диалоги, подписи к кнопкам, форматирование текста, шрифты и мн. др. Внешний вид меняется с помощью предустановленных тем. Причем используются не только «родные» стили (Windows 7, Windows 8 и др.), но и различные MSStyles-модификации, которые можно скачать отдельно.

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

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

SetupBuilder

SetupBuilder относится к инструментам для быстрой разработки и настройки приложений. С его помощью можно создавать скриптовые инсталляторы с компактным ядром размером в 160 КБ. Это могут быть веб-, CD/DVD-дистрибутивы, работающие под любой ОС Windows 9.x и выше. Среди ключевых особенностей SetupBuilder значится сертифицированная поддержка Windows 8 и Windows Server 2012 - что гарантирует совместимость и корректность установки.

Следует отметить, что есть две редакции приложения на выбор: для разработчиков (Developer) и профессиональная версия (Professional). Перечень возможностей существенно между этими редакциями, с той особенностью, что более функциональна SetupBuilder Developer. Она включает в себя графический редактор диалогов, отладчик, компилятор, генератор обновлений и прочие компоненты.

Создавая проект с нуля, можно воспользоваться мастером, однако он, по сути, мало что решает. Редактор проектов состоит из следующих разделов: Project Definition (Свойства проекта), Installation Details (Установки), Setup Appearance (Внешний вид), Setup Requirements (Зависимости) и Script Logic (Сценарий).

Project Definition - настройка общей информации, переменных, профилей установки. Следует отметить подраздел Web-deployment (Веб-развертывание), где можно активировать функции веб-обновления или веб-инсталляции продукта. Также, один проект может включать в себя несколько версий приложения (Releases).

Installation Details - определение содержимого инсталлятора, включая файлы, папки, ключи реестра, сервисы, драйверы, переменные окружения и прочие элементы.

Setup Appearance - настройка оформления. Для определения внешнего вида инсталлятора - включая диалоги, текстовое содержание, кнопки, поля и т. д. - используется визуальный редактор. Прочие настройки, такие как локализация и стиль инсталлятора, указываются отдельно в настройках проекта (Project - Settings).

Setup Requirements - проверка зависимостей, прав доступа, системных и прочих файлов.

Script Logic - доступ к сценарию инсталлятора. Для работы со скриптами используется собственная IDE-среда, также имеется встроенный визуальный дебаггер. В SetupBuilder задействован скриптовый язык SetupScript, и, в случае с редакцией Developer, прилагается около 500 предустановленных функций. Кроме использования SetupScript, во время установки можно обратиться Windows API или подключить необходимые DLL-библиотеки.

За безопасность отвечает функция SetupProtect, доступная в SetupBuilder Developer. Она позволяет использовать серийные номера и ключи подписки на определенный период работы. В дополнение, доступна цифровая подпись дистрибутива.

Резюме . SetupBuilder позволяет создавать инсталляторы, веб-инсталляторы и обновления, используя скрипты и возможности Windows API. Из наиболее примечательных сторон данного комплекса - тесная поддержка Windows, визуальные редактирование и отладка проекта, многоязычность и защита от несанкционированного использования.

Visual Installer 2014

Visual Installer - комплекс для создания windows-инсталляторов в визуальном режиме и при поддержке сценариев. Создаваемые дистрибутивы могут распространяться на CD/DVD-, USB-носителях и через интернет, в виде самораспаковывающихся архивов.

Есть две версии Visual Installer - стандартная и профессиональная. В последнем случае, в состав дополнительно включены менеджер проектов и SamLogic Selector - утилита для определения системных зависимостей при запуске. Кроме того, профессиональная версия позволяет работать с 64-битными приложениями и предполагает работу со сценариями.

Вначале Visual Installer предлагает указать формат распространения дистрибутива и установить базовые настройки. Как вариант, можно импортировать в программу имеющиеся проекты из сред Visual Studio / Visual Basic и продолжить работу, основываясь на существующем проекте.

Далее работа осуществляется непосредственно в редакторе. В нижней его части доступны вкладки для навигации между разделами. В разделах File list, Registry, INI Files и Components определяется структура инсталлятора, включая файлы, директории, ключи реестра и другие компоненты. Отдельно можно выделить визуальную составляющую. Так, при настройке мастера установки предоставляется выбор диалогов (вкладка Dialog Boxes): ввод ключа лицензии, выбор компонентов, текст лицензии и т. д. Дизайн установщика определяется в соответствующей вкладке Design: это цвет, фон, шрифты, изображения и звук.

Дополнительные опции инсталлятора доступны в разделе меню Specials. Здесь можно указать зависимости (версия операционной системы и.Net Framework), без которых установка будет невозможна. Также доступны такие опции инсталлятора как тихая установка, цифровая подпись и парольная защита.

Visual Installer предусматривает создание многоязычных дистрибутивов. Управлять локализациями, по сравнению с другими инсталляционными комплексами, не очень удобно: все файлы хранятся в LNG-формате во внешнем файле, который необходимо редактировать вручную в текстовом редакторе.

Сценарии, доступные в Pro-версии, могут быть задействованы перед установкой и после ее завершения. Скриптовый язык позволяет использовать переменные и команды, описанные в справочнике, управлять процессом создания файлов, папок, ярлыков, других компонентов, запускать внешние MSI- и прочие программы. Для редактирования сценариев используется простой редактор с поддержкой автодополнения IntelliSense.

Напоследок, нужно отметить следующий момент: в диалогах некорректно отображается кодировка и не все активные кнопки срабатывают при нажатии. Данная проблема наблюдается в Windows 8.

Резюме . Достаточно простой и несколько устаревший инсталляционный комплекс, где, тем не менее, доступны сценарии и визуальный редактор проектов. Все настройки осуществляются на основе заготовок, изменить порядок установки нельзя.

Сводная таблица

Приложение NSIS (Nullsoft Scriptable Install System) Inno Setup IzPack Excelsior Installer WiX Toolset Clickteam Install Creator Actual Installer CreateIntall Advanced Installer InstallBuilder InstallMate InstallShield Setup Factory SetupBuilder Visual Installer
Разработчик Nullsoft Jordan Russell, Martijn Laan Julien Ponge и др. Excelsior Microsoft Clickteam Softeza Development Novostrim Caphyon LTD BitRock Tarma Software Research Flexera Software Indigo Rose Lindersoft SamLogic
Платформа Windows, POSIX Windows Windows, Linux, MacOS + Windows Windows Windows Windows Windows Windows Windows, Linux, Mac OS + Windows Windows Windows Windows Windows
Цена бесплатно бесплатно бесплатно бесплатно бесплатно €49,00 / €119,00 (Pro) $89 бесплатно (Free) / 2000 руб. (полная версия) от $399 от $995 от $89 от $649 $395 $299 (Developer) / $169 (Pro) $129
Язык сценариев NSIS Inno Setup Script, Pascal Java Windows Installer Gentee VBScript, Jscript Java, PHP, Perl, Python, Ruby, C/C++, .NET/Mono VBScript, Jscript, PowerShell InstallScript, PowerShell LUA SetupScript Visual Installer
Тип установщика EXE EXE JAR EXE MSI EXE EXE EXE EXE, MSI, JAR EXE EXE, MSI EXE, MSI EXE EXE, MSI EXE
Редактор проектов + (надстройки) + (надстройки) + (надстройки) + + (надстройки) + + + + + + + + + +
Импорт проектов Eclipse, IntelliJ IDEA, Netbeans, Apache Ant NSIS Visual Studio Visual Studio, Eclipse, Visual Basic и др. Visual Studio, Visual Basic и др. Visual Studio, Windows Installer и др. Visual Basic, .NET, Windows Installer и др. .NET Visual Studio, Visual Basic
Мультиязычность + + + + + + + + + + + + + +
Типы компрессии ZLib, BZip2, LZMA BZip2, LZMA/LZMA2 raw, gzip, bzip2, 7-Zip SFX не указано MSZIP zipper/ differentiator не указано CAB, 7-Zip LZMA LZMA LZMA/LZMA2 Zlib LZMA/LZMA2 LSZip ZIP
Серийный номер / парольная защита + + + (Pro) + + + + + + + +
Выбор компонентов при установке + + + + + + + + +
«Тихая» установка + + + + + + + + + + + + + +
Командная строка + + + + + + + + + + + + + +
Расширения + + + + + + + + +

Основные функции

  • создание единого EXE;
  • разбивка установщика на диски;
  • несколько типов установки программ (полный, выборочный, минимальный);
  • возможность деинсталляции;
  • функции сжатия (deflate, bzip2, 7-Zip);
  • сравнение информации о версии, замена файлов, которые используются во время установки инсталлятором;
  • создание ярлыков в указанном месте;
  • запароленные и зашифрованные установки;
  • тихая инсталляция и удаление;
  • создание реестровых записей, а также INI-файлов.

Достоинства и недостатки

Достоинства:

  • бесплатное распространение;
  • поддержка русского языка;
  • удобный и понятный интерфейс в виде Мастера;
  • интегрированный скриптовый движок на языке Pascal;
  • возможность многоязычной установки.

Недостатки:

  • ручное редактирование скриптов.

Альтернативы

Install Creator. Бесплатное приложение для создания собственных уникальных установщиков различных программ. Дает возможность применения пользовательских иконок, записи значений в реестре, автоматической установки шрифтов, скачивания данных с серверов.

Install Wizard Creator. Простая бесплатная программа, с помощью которой можно создавать инсталляторы приложений. Операция выполняется в несколько шагов: указание названия, добавление файлов, нажатие на кнопку.

Принципы работы

Чтобы создать для программы единый установочный файл, запустите Inno Setup, нажмите на кнопку «Файл», «Новый» и запустите Мастер.

Создание установочного файла

В следующем окне укажите основные данные о приложении: имя, версия, разработчик, домашняя страница и т. д.

Затем в специальное поле необходимо внести exe-файл, запускающий установленное приложение, а также добавить список, включающий все его компоненты и файлы.

Если существует файл лицензии, укажите в следующем окне путь к нему. Также есть возможность создать Readme.txt, написать сообщение либо оставить строки пустыми.

  • имя установочного файла;
  • место для размещения скомпилированного файла;
  • ярлык инсталлятора.

В последнем окошке нужно оставить все, как есть, что позволит упростить скрипт инсталлятора.

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

Файл приложения

Inno Setup поможет сделать полноценный профессиональный инсталлятор, который будет обладать необходимой защитой и рядом обязательных функций.

Если Вы решили заняться распространением своих программ, то без установочного дистрибутива не обойтись. В настоящее время практически все программы имеют инсталлятор, обычно он называется Setup.exe. В этой статье мы рассмотрим на примере, как собрать инсталлятор для приложения Access и разберем некоторые особенности, которые необходимо при этом знать.

Как уже говорилось ранее, Access не позволяет сделать исполняемый файл, способный работать без Access. Но в то же время, Microsoft предлагает для решения проблемы воспользоваться пакетом Microsoft Office Developer , в состав которого входит и лицензия на распространение программы Microsoft Access runtime . Остановлюсь на этом подробнее.

Программа Microsoft Access runtime - это версия Access, которая позволяет пользователям выполнять, но не модифицировать приложение Access. Устанавливать Microsoft Access runtime вместо полной версии есть смысл только в том случае, когда нужна лицензионная чистота, а у клиента, у которого исполняется Ваша база, нет лицензии на Access. В этом случае придется покупать ODE (Оffice Developer Edition). Тогда вместе с его покупкой Вы получаете некоторые дополнительные инструменты и самое главное ПРАВО устанавливать клиентам вместе с разработанной вами базой еще и Run-time версии Аccess. В этом случае к клиенту не будет притензий по поводу незаконного использования Аccess. Иначе каждому клиенту необходимо купить лицензию MS AАccess.

В пакет ODE входит "создатель дистрибутивов" который включает в диистибутив Вашу MDB и Run-time версию. Все библиотеки необходимые для создания Run-time уже есть в полной версии Аccess (даже без ODE). Но тут есть одно НО (это для тех, кого беспокоит лицензионная "читота"):

Если Вы его не купите официально, то у клиентов все равно не будет права использовать даже Run-time версию.

Может возникнуть такая мысль: А что, если узнать какие файлы нужны Access для работы и включить их в установочный дистрибутив? Можно, но это не решает проблемы с лицензией. К тому же придется создавать достаточно сложную программу установки с проверкой имеющихся компонентов и установкой/регистрацией отсутсвующих. Причем в последнем случае можно при неумелых действиях даже разрушить систему.

Вообще, если рассматривать реальные ситуации с продажей приложений на Access, то лишь немногие разработчики (речь идет о России) действительно покупают лицензионные пакеты. Как правило это те, для кого "при определенном уровне развития бизнеса вопрос покупать - не покупать теряет свою актуальность" - или говоря проще, кто может себе позволить купить лицензионный пакет за 600$ - 1000$. Интересно потом выслушивать их чертыхания на форумах по поводу работы таких программ. Насколько я понял там те же самые "косяки", что и в пиратских версиях. Поэтому призывать Вас использовать только бесплатные или пиратские версии Office для Ваших программ я не буду, но и рекомендовать пользоваться лицензионным тоже не стал бы (см. выше).

Интересно, что полную версию Access можно запустить в runtime - режиме, задав в командной строке ключ /runtime. Например, создайте на рабочем столе ярлык, кликнете по нему правой кнопкой мыши, в появившемся диалоговом окне в поле объект напишите примерно так: (это для Office 2000 - XP, а для 2003 нужно будет исправить вместо Office10 - Office11)

"C:\Program Files\Microsoft Office\Office10\MSACCESS.EXE" "D: \Базы\Моя База.mdb"/runtime

а в поле «Рабочая папка»:

Теперь запустим приложение через этот ярлык. Откроется окно проекта Access, но ярлыка Access, а так же стандартных панелей инструментов уже там не будет. Это и есть runtime - режим.

Для начинающих разработчиков распространение приложений Access через пакет Microsoft Office Developer вряд ли приемлемо. Ведь он стоит денег, и не малых. Мы рассмотрим другой способ, при помощи бесплатного инсталлятора Inno Setup . Есть конечно и другие как платные, например InstallShield , так и бесплатные инсталляторы. Различаются они по удобству работы, размеру создаваемого дитсрибутива.

Inno Setup - свободно распространяемый инсталлятор для программ Windows. Английские версии появились ещё в 1997, теперь Inno Setup переводится на несколько языков, а инсталляторы может создавать более чем на 20 языках. Inno Setup превосходит многие коммерческие инсталляторы по возможностям, стабильности и размеру создаваемых файлов.

Основные характеристики:

  • программа может сравнивать информацию о версии файла
  • перемещать используемые файлы
  • регистрировать DLL/OCX/FNT/TLB и типовые библиотеки
  • инсталировать шрифты
  • проверяет, активны ли определенные программы
  • создание ярлыков быстрого доступа (например, через старт-меню или на рабочем столе)
  • осуществление записи в ini-файлы
  • встроенная машина для написания скриптов на языке Pascal
  • поддерживает многоязыковую инсталяцию
  • инсталяция и деинсталяция по умолчанию
  • весь код доступен (Borland Delphi 2.0-5.0)
  • защита пароля для setup
  • в случае отмены во время исполнения, все действия будут приведены в исходное состояние
  • поддерживает все 32-х битные версии Windows (95, 98, 2000, 2003, XP, Me, NT 4.0)
  • создает создание одного файла exe, что значительно облегчает процесс инсталяции Вашей программы
  • стандартный интерфейс Windows 2000/XP
  • ориентирован на пользователя (например, полный, минимальный, пользовательский вариант)
  • все инструменты для деинсталяции
  • инсталирование файлов: встроенная поддержка "deflate", bzip2, 7-zip LZMA файлы сжатия

Так же начиная с версии 2.0.6 Inno Setup включает в себя полную поддержку для MBCS. В более ранние версии последнее свойство не входит. А вот Web-инсталяцию не поддерживает.

Особенность создания инсталлятора в Inno Setup - это то, что инсталляторы создаются при помощи скриптов - простых текстовых файлов ASCII, напоминающих.INI файлы. Скрипты редактировать легче, чем, например, работать с интерфейсом Installshield. Скрипты имеют расширение ".iss" (inno setup script). В нём указываются все параметры инсталлятора, и при установке, программа ассоциирует себя с этими файлами. Скрипт разделен на секции, имена которых пишутся в квадратных скобках . Внутри секций существуют ключевые слова и указания, которые компилятор может читать и выполнять.

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

; -- Sample1.iss --
; Demonstrates copying 3 files and creating an icon.

Порядок секций не имеет значения. Все они (за исключением ) являются произвольными. Ключевому слову значение присваивается при помощи знака равенства (=).

Указания состоят из одного или нескольких параметров и их опций, а также флагов flags . Параметр же в свою очередь состоит из имени, за которым следует двоеточие : и значения. Параметры, опции и флаги отделяются друг от друга точкой с запятой ;

Рассмотрим в кратце основные секции:

Секция

Значение

сoдержит указания по поведению инсталяционной рутины, а также, как это должно выглядеть. Ключевые слова AppName, AppVerName и DefaultDirName являются обязательными. Все остальные - по необходимости
Здесь содержатся файлы для setup
ярлыки (иконки)
Соотношение компонентов к типу инсталяционной рутины
разрешает создать новые пустые папки
делает записи в INI- файлы
первое действое при инсталяции, cистаксис соответствует секции
разрешает специфические изменения в тексте
делает запись в регист
выполняет другие программы после того как данные успешно были исталированы, но еще до того как будет закрыто диалоговое окно
разрешает дополнитекльные действия в setup
устанавливает тип setup-а
последняя операция при деинсталяции. Таким образом папки и/или файлы будут удалены
первая операция при деинсталяции. Систаксис соответствует секции
содержит информацию о языке. как правило, не используется

Inno Setup работает внутри скрипта с различными предопределеными константами, которые, как правило, содержат пути (path). Способ написания: {имя} . Некоторые константы, такие как {app} и {group} могут/должны быть предопределены пользователем. Тот, кто сам желает определить константы, должен обратиться к припроцессеру Алекса Якимова (Alex Yackimoff).

Вот основные константы Inno Setup:

константа

пример

{win} путь в директорию/папку Windows C:\Windows
{sys} путь в системную папку Windows, в частности папку System32 C:\Windows\System или C:\Windows\System32
{app} путь к собственной аппликации (программе)
{pf} путь к программной папке C:\Programme
{cf} путь к общим данным C:\Programme\Gemeinsame Dateien
{dao} cоответствует{cf}\Microsoft Shared\DAO C:\Programme\Gemeinsame Dateien\Microsoft Shared\DAO
{src} путь к папке инсталявионной рутины, в момент выполнения setup R:\
{group} группа программ для стартового меню

Итак, рассмотрим задачи, которые нужно решить (определим только минимальные). Наш инсталлятор должен сделать следующее:

Распаковать файлы в нужные места
Создать папку в каталоге программы (папка «Коп» - для хранения резервных копий базы)
Создать меню запуска приложения в Пуск - Все программы, а так же иконку на рабочем столе

Это необходимый минимум. Но, разумеется, это далеко не все возможности Inno Setup. Ведь не зря его используют многие разработчики. Но в данной статье я ограничусь только этим, желающие глубже изучить возможности программы могут обратиться к справочной системе. В Интернет есть множество ссылок как на программу, так и на переводы справки. Например, Inno Setup 5.1.6. и справку к нему Вы можете скачать здесь… Английский сайт программы http://www.innosetup.com

Для начала попробуйте поэкспериментировать, создавая инсталлятор при помощи мастера, а затем изучая структуру полученного скрипта. В принципе, я думаю нет нужды подробно описывать, что где нажимать. Inno Setup настолько прост в освоении, что без проблем изучается, что называется «методом научного тыка». Вот например скрипт инсталятора, который делает определенные ранее задачи (все файлы дистрибутива находятся в каталоге D:\Setup.)


AppName=Моя программа
AppVerName=Моя программа. Версия 1.0.
AppPublisher=MyProgram, Inc.
AppPublisherURL=http://MyMySoft.ru/
AppSupportURL=http://MyMySoft.ru/
AppUpdatesURL=http://MyMySoft.ru/
DefaultDirName={pf}\MyProgram
DisableDirPage=no
DefaultGroupName=Моя программа
DisableProgramGroupPage=yes
LicenseFile=D:\Setup\license.txt
InfoAfterFile=D:\Setup\readme.txt
AlwaysCreateUninstallIcon=yes


Name: "desktopicon"; Description: "Создать ярлык на &Рабочем столе"; GroupDescription: "Дополнительные ярлыки:"


Source: "D:\Setup\Сервер.mdb"; DestDir: "{app}"; DestName: "Сервер.mdb";
Source: "D:\Setup\license.txt"; DestDir: "{app}";
Source: "D:\Setup\readme.txt"; DestDir: "{app}";
Source: "D:\Setup\Log.JPG"; DestDir: "{app}";
Source: "D:\Setup\Log.ico"; DestDir: "{app}";
Source: "D:\Setup\База.mdb"; DestDir: "{app}";


Filename: "{app}\MyProg.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://MyMySoft.ru/"


Name: "{app}\Коп"


Name: "{group}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}";IconFilename:{app}\Log.ico
Name: "{group}\Сайт программы"; Filename: "{app}\MyProg.url"
Name: "{userdesktop}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}"; IconFilename:{app}\Log.ico;Tasks: desktopicon

Пример, как это все работает, Вы можете скачать ниже.

  • Обратиться в "Интерфейс" за дополнительной информацией/по вопросу приобретения продуктов

Файлы для загрузки

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


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

Языковые нормы

Прежде всего необходимо понять, что это перевод слова. Довольно часто именно он оказывает помощь пользователю, дает возможность вникнуть в смысл операции. Что представляет собой Setup? Чтобы получить ответ на данный вопрос, следует обратиться к английскому словарю. Это слово в переводе означает «установка» (существительное) или «устанавливать» (глагол). Другими словами, что-то, что выполняет установку на компьютер. Стоит отметить, что без этого компонента трудно представить себе работу операционной системы. Неужели программа Setup настолько важна? Это следует выяснить. Особенно, когда компьютер систематически выдает различные ошибки.

Для компьютера Что такое Setup?

Кроме главного перевода, существуют еще и компьютерная трактовка этого приложения. Она наиболее понятна для современных пользователей. Стоит отметить, что «Сетап» означает программу, предназначенную для установки чего-либо. Основным ее компонентом является Setup.exe. Другими словами, это установочный или исполняемый файл. То, что осуществляется на компьютере после запуска. Чем характеризуется Setup? К примеру, можно выделить среди исполняемых документов различные приложения, игры (их установку), запуск настроек. Также существует и Bios Setup. Это наименование настроек, которые дают возможность работать с компьютером. Другими словами, с популярным всем «Биосом».

Невозможно представить компьютер без «Сетапа». Когда данных файлов нет, пользователь не сможет выполнять разные команды. Невозможно будет и устанавливать контент и программы. Setup.exe присутствует в каждом приложении или игре. Он помогает запустить программу установки, которая позволяет оперативно поставить требуемый контент в операционную систему. Чтобы активировать эту функцию, необходимо два раза совершить щелчок по исполняемому файлу.

Правила обращения

Стоит отметить, что файл Setup.exe нуждается в особом обращении. Особенно, когда речь идет об установке игры, которая скачана из интернета. Следует разобраться, что же помогает в данном непростом деле. Сначала необходимо просто закрыть все сторонние приложения, чтобы избежать возможных сбоев. Далее можно переходить в папку, содержащую исполняемый файл. Для запуска потребуется два раза кликнуть по «Setup.exe». При установленной операционной системе Windows 7 и выше, у пользователя компьютер спросит разрешение начала процесса. На экране всплывет окно с главной информацией об изготовителе-создателе, а также о расположении документа. Там понадобится ответить «Да», чтобы выполнить запуск, или «Нет», чтобы отменить установку чего-либо.

Когда будет выполнено подтверждение, возникнет окно с простой навигацией. Сначала система поприветствует пользователя и оповестит, что будет устанавливаться. Затем нужно придерживаться всех указаний в «Инсталляторе» и завершить процесс. После этого будет установлено определенное приложение. Очень важно никогда не перемещать Setup.exe из корневой папки контента. Также не рекомендуется удалять его и удалять его даже после того, как произойдет установка на компьютер. Это может являться причиной отказа приложений от работы. Стоит отметить, что «Сетап» представляет собой еще и приложение, которое требуется не только для установки чего-либо, а также для запуска. Все ярлыки, содержащиеся на рабочем столе, которые участвуют в активации программ, в результате имеют адрес с расширением «exe».

Процесс

Среди исполняемых процессов можно иногда обнаружить «Сетап». Стоит отметить, что некоторые пользователи настораживаются при этом. Setup работает и следит за выполняемыми и запускаемыми процессами. Таким образом, он выполняет функции некого фильтра. Если его отключить, работа операционной система становится неконтролируемой. Другими словами, невозможно нормально устанавливать и запускать приложения и игры. Поэтому не нужно стараться заниматься данной самодеятельностью. Порой этот процесс занимает много компьютерных ресурсов.

Вирус

Допустим, безопасный ранее «Сетап» способен стать настоящим вирусом. В данном случае он может находиться где-то в операционной системе и шифроваться под обыкновенный исполняемый файл. Такая компьютерная зараза зачастую прикрепляется к приложениям, в которых больше всего возникает необходимость. Вирус активируется постоянно после запуска требуемой программы. Стоит отметить, что антивирус не всегда способен справиться с проблемой. Изначально обнаружить вирус, который замаскирован под «Setup.exe», достаточно тяжело. Если существуют подозрения, что компьютер заражен, придется закрыть все приложения, а также выполнить проверку системы на наличие заразы. В данной ситуации на помощь придет антивирус. Отлично справляются с «Сетапом» следующие программы:

Avast;
Nod32;
Dr.Web.

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

Шпион

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

Использовать антивирус в данном случае не всегда эффективно. Потребуется дополнительно скачать и установить специальную программу-антишпион. К примеру, SpyHunter. Она пребывает в свободном доступе и проста в использовании. Необходимо запустить приложение, а после этого начать проверку. Когда будут получены результаты, можно смело удалять угрозы. Не нужно забывать и о посещении диспетчера задач и после этого завершить процесс Setup.exe. Далее стоит перезагружать компьютер. «Сетап» вновь окажется в диспетчере, однако пугаться его также не стоит.

Таким образом, в статье был разобран вопрос, что представляет собой Setup. Как можно заметить, что это очень важный файл. Порой он способен принести много проблем. Чтобы избежать неприятностей, следует просто смотреть, что устанавливается на компьютер и скачивается. Рекомендуется всегда запускать только те процессы, которые заслуживают доверие.