Russian version
English version
ОБ АЛЬЯНСЕ | НАШИ УСЛУГИ | КАТАЛОГ РЕШЕНИЙ | ИНФОРМАЦИОННЫЙ ЦЕНТР | СТАНЬТЕ СПОНСОРАМИ SILICON TAIGA | ISDEF | КНИГИ И CD | ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ | УПРАВЛЕНИЕ КАЧЕСТВОМ | РОССИЙСКИЕ ТЕХНОЛОГИИ | НАНОТЕХНОЛОГИИ | ЮРИДИЧЕСКАЯ ПОДДЕРЖКА | АНАЛИТИКА | КАРТА САЙТА | КОНТАКТЫ
 
Программное обеспечение
 
Для зарегистрированных пользователей
 
РАССЫЛКИ НОВОСТЕЙ
IT-Новости
Новости компаний
Российские технологии
Новости ВПК
Нанотехнологии
 
Поиск по статьям
 
RSS-лента
Подписаться
Документация

Inno Setup

Анастасия Маховикова

Данная статья является попыткой донести первоначальные знания в области использования этого инструмента для написания инсталяционной рутины и ни в коем образе не претендует на звание "продвинутой".
Inno Setup это свободная для использования программа. Ее создателем является Джордан Рассел (Jordan Russell). Впервые представлена в 1997 году. Ее можно свободно скачать.

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

Существует Newsgroup-а, созданная автором (к сожалению, только на английском языке), где, как правило, можно быстро и компетентно получить ответ.

Cамые простые и частые вопросы.

Является ли эта программа совершенно бесплатной для использования в тoм числе и коммерческого?
Программа является бесплатной. Однако на нее есть copyright, что описано в лицензии.

Поддерживает ли Inno Setup MBCS (мультибайтовые наборы знаков)?
Inno Setup 2.0.6 включает полную поддержку для MBCS. В более ранние версии последнее свойство не входит.

Поддерживает ли программа web-инсталяцию?
нет

Скрипт.

Это простой ASCII текстовый файл, пстроен на подобии INI. Скрипт разделен на секции, имена который пишутся в квадратных скобках []. Внутри секций существуют ключевые слова и указания, которые компилятор может читать и выполнять.

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

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

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

Обзор секций:
секция значение
[Setup] сoдержит указания по поведению инсталяционной рутины, а также, как это должно выглядеть. Ключевые слова AppName, AppVerName и DefaultDirName являются обязательными. Все остальные - по необходимости
[Files] Здесь содержатся файлы для setup
[Icons] ярлыки (иконки)
[Components] Соотношение компонентов к типу инсталяционной рутины
[Dirs] разрешает создать новые пустые папки
[INI] делает записи в INI- файлы
[InstallDelete] первое действое при инсталяции, cистаксис соответствует секции [UninstallDelete]
[Messages] разрешает специфические изменения в тексте
[Registry] делает запись в регист
[Run] выполняет другие программы после того как данные успешно были исталированы, но еще до того как будет закрыто диалоговое окно
[Tasks] разрешает дополнитекльные действия в setup
[Types] устанавливает тип setup-а
[UninstallDelete] последняя операция при деинсталяции. Таким образом папки и/или файлы будут удалены
[UninstallRun] первая операция при деинсталяции. Систаксис соответствует секции [Run]
[LangOptions] содержит информацию о языке. как правило, не используется

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

константы содержание пример
{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} группа программ для стартового меню

Примеры:

Таким образом может быть написан комментарий
; - Sample1.iss -
; Demonstrates copying 3 files and creating an icon.

Обязательная часть
[Setup]
AppName=My Program
AppVerName=My Program version 1.5
AppCopyright=Copyright (C) 1997-2000 My Company, Inc.
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
UninstallDisplayIcon={app}\MyProg.exe

Данная секция хоть и является производной, однако используется в большиинстве случаев. В данном случае копируются три файла в папку, путь в которую записан в переменную {app}
[Files]
Source: "MyProg.exe"; DestDir: "{app}"
Source: "MyProg.hlp"; DestDir: "{app}"
Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme

[Icons]
Name: "{group}\My Program"; Filename: "{app}\MyProg.exe"

После написания скрипта необходимо его откомпилировать.

В этой небольшой статье я попыталась описать основные правила использования Inno Setup. Больше информации Вы можете получить на авторском сайте www.jrsoftware.org

Источники:
http://www.unofactura.de/inno.htm
jrsoftware.innosetup
jrsoftware.innosetup.code
jrsoftware.innosetup.thirdparty
www.innosetup.de.vu


  Рекомендовать страницу   Обсудить материал  [2] Написать редактору  
  Распечатать страницу
 
  Дата публикации: 16.03.2006  

ОБ АЛЬЯНСЕ | НАШИ УСЛУГИ | КАТАЛОГ РЕШЕНИЙ | ИНФОРМАЦИОННЫЙ ЦЕНТР | СТАНЬТЕ СПОНСОРАМИ SILICON TAIGA | ISDEF | КНИГИ И CD | ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ | УПРАВЛЕНИЕ КАЧЕСТВОМ | РОССИЙСКИЕ ТЕХНОЛОГИИ | НАНОТЕХНОЛОГИИ | ЮРИДИЧЕСКАЯ ПОДДЕРЖКА | АНАЛИТИКА | КАРТА САЙТА | КОНТАКТЫ

Дизайн и поддержка: Silicon Taiga   Обратиться по техническим вопросам  
Rambler's Top100 Rambler's Top100