Inno Setup 是一款免费的 Windows 安装包制作工具,支持多种功能,如安装文件打包、卸载功能、注册表修改、快捷方式创建等。以下是完整的 Inno Setup 使用步骤:
---
## **1. 下载和安装 Inno Setup**
1. 前往 [Inno Setup 官网](https://jrsoftware.org/isinfo.php) 下载最新版本。
2. 安装并启动 Inno Setup。
---
## **2. 创建安装脚本**
### **2.1 使用 Inno Setup 向导**
1. **启动脚本向导**:
- 打开 Inno Setup,选择 **"New Script"**,然后点击 **"Create a new script file using the Script Wizard"**。
2. **填写应用信息**:
- **Application name**:输入应用程序名称,例如 `MyApp`。
- **Application version**:输入版本号,例如 `1.0`。
- **Application publisher**:输入发布者名称,例如 `MyCompany`。
- **Application website**:可选,输入应用网站地址。
3. **选择安装目录**:
- 默认安装路径:`{pf}\MyApp`(`{pf}` 表示 "Program Files" 文件夹)。
4. **选择文件**:
- 点击 **Add Files...**,选择要打包的文件,如 `.exe`、`.dll`、资源文件等。
5. **创建快捷方式**:
- 添加桌面或开始菜单快捷方式。
6. **编译设置**:
- 输出文件名,例如 `Setup_MyApp.exe`。
7. **完成**:
- 向导完成后会生成脚本。
---
### **2.2 自定义脚本**
以下是一个自定义脚本的简单示例,用于打包一个 WebView2 应用程序:
```ini
[Setup]
AppName=My App
AppVersion=1.0
DefaultDirName={pf}\MyApp
OutputBaseFilename=Setup_MyApp
Compression=lzma
SolidCompression=yes
[Files]
Source: "C:\path\to\MyApp.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\path\to\Loader.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\path\to\assets\*"; DestDir: "{app}\assets"; Flags: ignoreversion recursesubdirs
Source: "C:\path\to\runtime\*"; DestDir: "{app}\runtime"; Flags: ignoreversion recursesubdirs
[Icons]
Name: "{group}\My App"; Filename: "{app}\MyApp.exe"
Name: "{commondesktop}\My App"; Filename: "{app}\MyApp.exe"; Tasks: desktopicon
[Tasks]
Name: "desktopicon"; Description: "Create a desktop icon"; GroupDescription: "Additional icons"; Flags: unchecked
[Run]
Filename: "{app}\MyApp.exe"; Description: "Launch My App"; Flags: nowait postinstall skipifsilent
```
---
## **3. 脚本关键部分解释**
### **[Setup]**
- **AppName**: 应用程序名称。
- **AppVersion**: 应用程序版本。
- **DefaultDirName**: 默认安装目录,`{pf}` 表示 `Program Files`。
- **OutputBaseFilename**: 输出安装包文件名。
- **Compression**: 压缩算法,`lzma` 是推荐的高效算法。
- **SolidCompression**: 开启固实压缩,提高压缩率。
---
### **[Files]**
指定需要打包的文件:
- **Source**: 文件路径。
- **DestDir**: 目标路径,`{app}` 表示安装目录。
- **Flags**:
- `ignoreversion`:忽略文件版本,强制覆盖。
- `recursesubdirs`:递归包含子文件夹。
---
### **[Icons]**
创建快捷方式:
- **Name**: 快捷方式名称。
- **Filename**: 快捷方式指向的目标文件路径。
- **Tasks**: 可选,关联到特定任务。
---
### **[Tasks]**
定义可选任务(如创建桌面图标):
- **Name**: 任务标识符。
- **Description**: 任务描述。
- **GroupDescription**: 任务组描述。
- **Flags**:
- `unchecked`:默认不勾选。
---
### **[Run]**
安装完成后的操作:
- **Filename**: 要运行的程序路径。
- **Description**: 描述。
- **Flags**:
- `nowait`:安装完成后直接运行,不等待进程结束。
- `postinstall`:仅在安装完成后运行。
- `skipifsilent`:在静默模式下跳过运行。
---
## **4. 编译脚本**
1. 在 Inno Setup 编辑器中打开脚本。
2. 点击 **"Compile"** 按钮。
3. 生成的安装包会保存在脚本所在目录中,文件名为 `Setup_MyApp.exe`。
---
## **5. 安装包测试**
1. 双击生成的安装包文件 `Setup_MyApp.exe`。
2. 按照提示完成安装,确认文件和快捷方式是否正确创建。
3. 测试卸载功能,确保卸载后文件已清理。
---
## **6. 高级功能**
1. **多语言支持**:
在 `[Setup]` 中添加以下内容:
```ini
[Setup]
DefaultLanguage=english
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "chinese"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
```
2. **注册表操作**:
添加注册表键值:
```ini
[Registry]
Root: HKCU; Subkey: "Software\MyApp"; ValueType: string; ValueName: "InstallPath"; ValueData: "{app}"
```
3. **文件关联**:
关联文件扩展名:
```ini
[Registry]
Root: HKCR; Subkey: ".myapp"; ValueType: string; ValueData: "MyAppFile"
Root: HKCR; Subkey: "MyAppFile\shell\open\command"; ValueType: string; ValueData: """{app}\MyApp.exe"" ""%1"""
```
---
0 Comments latest
No comments.