以下是常用的安装程序制作工具(以 Windows 为例):
| 工具名称 | 特点 |
|--------------------------|----------------------------------------------------------------------|
| **Inno Setup** | 免费、轻量、脚本化配置,适合大多数场景。 |
| **NSIS** | 开源、灵活,支持复杂逻辑,但需要学习脚本语法。 |
| **Advanced Installer** | 图形化界面,简单易用,免费版功能有限。 |
| **WiX Toolset** | 微软官方工具,适合生成 MSI 安装包,但学习曲线较陡。 |
| **InstallForge** | 免费、图形化界面,快速生成安装包。 |
推荐 **Inno Setup**(免费且功能全面),以下以它为例。
---------------------------------------------------------------------------------------------------------------------------------
### **步骤 3:使用 Inno Setup 创建安装程序**
1. **下载安装 Inno Setup**
官网:[https://jrsoftware.org/isdl.php](https://jrsoftware.org/isdl.php)
2. **编写 Inno Setup 脚本**
新建一个 `.iss` 文件(如 `setup.iss`),示例脚本如下:
```iss
[Setup]
AppName=YourApp
AppVersion=1.0
DefaultDirName={pf}\YourApp
OutputDir=.\Output
OutputBaseFilename=YourApp_Setup
Compression=lzma
SolidCompression=yes
[Files]
; 将 PyInstaller 生成的文件全部包含进去(如单文件或目录)
Source: "dist\your_script.exe"; DestDir: "{app}"
Source: "dist\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
[Icons]
; 创建桌面快捷方式
Name: "{commondesktop}\YourApp"; Filename: "{app}\your_script.exe"
; 创建开始菜单项
Name: "{commonprograms}\YourApp"; Filename: "{app}\your_script.exe"
[Run]
; 可选:安装完成后运行程序
Filename: "{app}\your_script.exe"; Description: "启动 YourApp"; Flags: postinstall nowait
```
3. **构建安装程序**
打开 Inno Setup,加载 `.iss` 脚本并点击 **Build**,生成的安装包会保存在 `Output` 目录中。
---------------------------------------------------------------------------------------------------------------------------------
### **步骤 4:高级配置(可选)**
- **添加依赖项**
如果程序依赖外部文件(如 DLL、配置文件),在 `[Files]` 部分指定路径:
```iss
Source: "config.ini"; DestDir: "{app}"
```
- **注册表操作**
在 `[Registry]` 部分添加注册表项(如设置开机启动):
```iss
[Registry]
Root: HKCU; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "YourApp"; ValueData: "{app}\your_script.exe"
```
- **静默安装**
通过命令行参数 `/SILENT` 或 `/VERYSILENT` 实现静默安装:
```bash
YourApp_Setup.exe /SILENT
```
---------------------------------------------------------------------------------------------------------------------------------
### **其他工具快速参考**
1. **NSIS 示例脚本**
创建 `.nsi` 文件:
```nsi
Outfile "YourApp_Setup.exe"
InstallDir "$PROGRAMFILES\YourApp"
Section
SetOutPath "$INSTDIR"
File /r "dist\*"
CreateShortcut "$DESKTOP\YourApp.lnk" "$INSTDIR\your_script.exe"
SectionEnd
```
2. **InstallForge 图形化操作**
直接通过界面添加文件、配置安装路径和快捷方式,无需编写脚本。
---------------------------------------------------------------------------------------------------------------------------------
### **注意事项**
1. **测试安装程序**
在虚拟机或干净环境中测试安装包,确保所有依赖项和路径正确。
2. **签名证书**
若需避免杀毒软件误报,可为安装程序添加数字签名(需购买证书)。
3. **跨平台需求**
- **macOS**:使用 `pkgbuild` 或 `create-dmg` 工具。
- **Linux**:打包为 `.deb` (Debian) 或 `.rpm` (Red Hat) 格式。