关键词:NSIS、打包、免费
导读
NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序,提供了安装、卸载、系统设置、文件解压缩等功能。
NSIS是通过脚本语言来描述安装程序的行为和逻辑的,所以用户可以完全控制安装程序的每个部分。它的脚本语言支持变量、函数、字串处理,就像是一个普通的程序语言,但其仅设计用来创建安装程序。
官方网站:http://nsis.sf.net
NSIS主要有以下特点:
开销小,一个完整功能的安装程序仅需要 34k 的额外开销;
支持大多数 Windows 平台,包括:Windows 95、Windows 98、Windows ME、Windows NT、Windows 2000、Windows XP、Windows Server 2003、Windows Vista、Windows Sever 2008、Windows 7、Windows Server 2008R2、Windows 8、Windows Server 2012、Windows 8.1、Windows Server 2012R2、Windows Server 2016、Windows 10 和 Windows 11;
支持 ZLib、BZip2 和 LZMA 数据压缩(文件可以单独压缩,也可以一起压缩);
支持脚本;
支持多语言,在一个安装程序中支持多种语言(包括RTL语言)。目前已有 40 多种翻译版本,同样支持用户创建自己的翻译;
支持安装界面定制;
提供可扩展的插件接口;
支持Web安装、文件补丁;
完全免费,可用于任何用途。
本期小百科介绍如何使用NSIS创建Windows安装程序。
安装说明
1. 下载NSIS,https://nsis.sourceforge.io/Download
双击下载好的NSIS安装包,并保持默认配置,直至安装完成,如图1
图1 NSIS安装完成
2. 下载HM NIS Edit,https://sourceforge.net/projects/hmne/
双击下载好的HM NIS Edit安装包,并保持默认配置,直至安装完成,如图2
图2 HM NIS Edit安装完成
示例
1. 首先要准备好要打包的程序,大家如果是C#开发的Winform或WPF项目,直接把Debug文件夹复制过来即可,但是一定要确保双击Debug文件夹里的exe应用程序,可以正常打开程序。
我这里准备好了一个待打包的程序,就是直接复制的Debug文件夹,如图3
图3 Debug文件夹
2. 双击Winform AI Continuous.exe可以直接运行程序,如图4
图4 Winform AI Continuous.exe
3. 进入HM NIS Edit,选择文件>>新建脚本向导,如图5
图5 新建脚本向导
然后点击下一步,如图6
图6 NSIS脚本向导
4. 按照下图进行填写应用程序信息(如图7),并点击下一步
图7 填写应用程序信息
5. 设置应用程序图标及语言(如图8),并点击下一步
图8 填写安装程序选项
6. 设置安装目录及授权信息(如图9),若没有授权文件,请把授权文件下面的文件路径删除掉, 并点击下一步
图9 设置应用程序的目录与授权信息
7. 设置应用程序文件(如图10),先删除系统默认的文件和目录,然后手动添加待打包的目录和应用程序exe
图10 设置应用程序文件
逐个删除系统默认的两个文件,如图11
图11 删除系统默认的两个文件
添加exe文件路径,如图12
图12 添加exe文件路径
添加打包程序文件目录,如图13
图13 添加打包程序文件目录
待全部添加后点击下一步,如图14
图14 添加打包程序文件目录
8. 确认应用程序图标(如图15),直接点击下一步即可
图15 确认应用程序图标
9. 指定安装程序完成时要执行的程序(如图16),直接点击下一步即可
图16 指定安装程序完成时要执行程序
10. 指定解除安装程序属性(如图17),直接点击下一步即可
图17 指定解除安装程序属性
11. 点击完成(如图18),如果有必要可以保存脚本
图18 向导完成
12. 点击箭头所指图标,编译脚本,如图19
图19 编译脚本
将脚本保存到指定路径中,如图20
图20 设置保存脚本的路径
编译完成,在日志窗格会显示类似的信息,如图21
图21 编译完成
13. 打开保存脚本的路径,即可查看到setup.exe和脚本文件,如图22
图22 查看安装包
到此,利用安装向导制作的安装包就完成了。
14. 双击setup.exe,进入安装界面,直接下一步安装即可,如图23
图23 运行安装包
保持程序默认配置直至安装完成,打开应用程序,如图24
图24 运行安装包
注意事项
1. 安装程序语言中没有语言类型,点击下一步后报错“请指定安装程序语言”,如图25
图25 报错“请指定安装程序语言”
解决方案
1) 原因:HM VNISEdit是第三方脚本编辑器。在编译的时候,它需要调用NSIS本身。之所以不出现语言选项,是因为它没检测到你的NSIS安装路径。
2) 在HM VNISEdit菜单栏“NSIS”下找到“配置”,如图26
图26 HM VNISEdit配置
3) 在打开的“路径”选项界面中,
将编译器路径浏览到 NSIS 安装路径下的 makensis.exe
帮助文件浏览到 NSIS 文件夹下的 help.chm 或NSIS.chm
完成配置后,点击确认,如图27
图27 设置编译器和帮助路径
2. 在编译过程中,发生“Insecure filename “Setup.exe“, Windows will unsafely load compatibility shims into the process”报错,如图28
图28 编译报错
解决方案:
该报错对创建程序安装包没有什么影响,可忽略。
Copyright © 2016-2024 JYTEK All Rights Reserved.