Inno Setup 详解中文资料
其一:使用教程
一、Inno Setup 是什么?
Inno Setup 是一个免费的 Windows 安装程序制作软件。第一次发表是在 1997 年,Inno Setup 今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件。
二、Inno Setup 能干什么?
1.支持现在所有正在使用的 Windows 版本: 7, 2008 R2, Vista, XP, 2008, 2003, 2000, Me, 98, 95, 和 NT 4.0 (不需要服务包)。
2.广泛支持在 64 位 的 Windows XP and Windows Server 2003 版本的操作系统中的 64 位应用程序安装。支持 x64 和 Itanium 两个结构。(在 Itanium 结构中,必须在 64 位模式安装 Service Pack 1。)
3.支持创建单个 EXE 格式的安装程序,使你的程序可以很方便地在网络上发表。同时也
支持磁盘延伸。
4.标准的 Windows 2000/XP 样式向导界面。
5.定制安装类型,例如:完整安装,最小安装,自定义安装。
6.完整的卸载功能。
7.文件安装:
包括完全的“压缩”支持,bzip2 和 7-Zip LZMA 文件压缩。安装程序可以比较文件版本信息,替换正在使用的文件,使用共享文件计数,注册 DLL/OCX 和类型库,以及安装字体。
8.可以在任意地方创建快捷方式,包括开始菜单和桌面。
9.创建注册表 和 .INI 条目。
10.在安装之前、之中或之后可运行其他程序。
11.支持多语言安装。
12.支持密码和加密安装。
13.支持数字签名 、安装和卸载。
14.后台安装和后台卸载。
15.Unicode 安装。(Windows 2000/XP 或更高)
16.完整的 Pascal 脚本 引擎选项于运行期高级自定义安装和卸载。
17.全部源代码公开 (Borland Delphi 2.0-5.0 和 2009)。
二、创建安装程序的方式:脚本
安装程序用编译脚本的方式创建,脚本其实就是一个类似 .INI 文件格式的 ASCII 码文本文件。(它不象你想象的那么复杂!)。 Unicode Inno Setup支持 UTF-8 编码文本文件。
脚本用一个“.iss”(表示 Inno Setup Script脚本) 的扩展名。脚本控制着安装程序的所有方
面。由它指定哪些文件将被安装到什么地方,在哪里创建快捷方式,且被命名为什么。
脚本文件一般可以用安装程序编译器程序内置的编辑器进行编辑。在你编写完脚本后,下一个最终步骤就是选择安装程序编译器中的“编译”。创建完成后,就可以运行根据你脚本编译的安装程序了。按默认,这个安装程序创建在包含脚本文件目录下的名为“输出”目录中。
如果你想看看它是怎样工作的,启动安装程序编译器,单击“文件 | 打开”,并选择位于 Inno Setup 安装目录下的 Examples 子目录中的一个脚本文件。(你也可以将这些示例脚本作为你自己编写脚本的模板。)
Inno tup脚本示范(注释)
[Setup]
;程序名
AppName=ISsample
;
版本号
AppVerName=ISsample 1.0.0.0
;发布者名
AppPublisher=Hkiss
;相关连接
AppPublisherURL=/
AppSupportURL=/
AppUpdatesURL=/
;默认安装目录
DefaultDirName={pf}\ISsample
;默认开始菜单名
DefaultGroupName=ISsample
;是否打开->可选安装开始菜单项
;AllowNoIcons=yes
;安装协议
;LicenFile=C:\Example\原始文件\
;安装前查看的文本文件
;InfoBeforeFile=C:\Example\原始文件\
;安装后查看文本文件
;InfoAfterFile=C:\Example\原始文件\
;输出文件夹
OutputDir=C:\Example\InnoSetup\out
;输出文件名
OutputBaFilename=tup
;安装图标
SetupIconFile=C:\Example\原始文件\title.ico
;安装需要输入密码
;Password=123
;Encryption=yes
;压缩相关
Compression=lzma
SolidCompression=yes
;可以让用户忽略选择语言相关
ShowLanguageDialog = yes
;备注版本信息
VersionInfoCompany=HTTP://www.Hkiss
VersionInfoDescription=ISsample 汉化增强版
VersionInfoVersion=1.0.0.0
VersionInfoCopyright=Copyright (C) 2007-2008 Hkiss
;制作选择语言
[Languages]
Name: "chs"; MessagesFile: "compiler:Default.isl" ;LicenSeFile :"C:\Example\原始文件\"
Name: "en"; MessagesFile: "compiler:Languages\English.isl";LicenSeFile :"C:\Example\
原始文件\"
;用户定制任务
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:Addition吧的笔顺
alIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "Tasks_1" ; Description:"用户自定义任务1"; Flags: unchecked
Name: "Tasks_2" ; Description:"用户自定义任务2"; Flags: unchecked
;选择了组件才会出现的定制任务
Name: "Tasks_3" ; Description:"用户自定义任务3";Components: c1 ; Flags: unchecked
;
文件安装
[Files]
;多语言安装环境设置 公共参数Languages 来设置
Source: "C:\Example\原始文件\"; DestDir: "{app}"; Languages: en ; Flags: ignoreversion
Source: "C:\Example\原始文件\"; DestDir: "{app}"; Languages: chs ; Flags: ignoreversion
;用户自定义任务 Tasks
Source: "C:\Example\原始文件\Tasks\"; DestDir: "{app}\Tasks"; Flags: ignoreversion ;Tasks : Tasks_1
Source: "C:\Example\原始文件\Tasks\"; DestDir: "{ap如何删除页面
p}\Tasks"; Flags: ignoreversion ;Tasks :Tasks_2
Source: "C:\Example\原始文件\Tasks\"; DestDir: "{app}\Tasks"; Flags: ignoreversion ;Tasks :Tasks_2
;用户定义组件安装
Source: "C:\Example\原始文件\Components\"; DestDir: "{app}\Components"; Flags: ignoreversion ; Components: a1;
Source: "C:\Example\原始文件\Components\"; DestDir: "{app}\Components"; Flags: ignoreversion ; Components: a2;
Source: "C:\Example\原始文件\Components\"; DestDir: "{app}\Components"; Flags: ignoreversion ; Components: a3;
Source: "C:\Example\原始文件\Components\"; DestDir: "{app}\Components"; Flags: ignoreversion ; Components: a1 a2 a3;
;用户注册自定义Dll文件 regrver 注册 noregerror 不显示错误信息
Source: "C:\Example\原始文件\jmail.dll"; DestDir: "{app}"; Flags: ignoreversion regrver