Inno Setup 和NSIS 都很有名气、很不错的开源安装包制作工具。

1. 入门难度

2. 脚本语言

NSIS脚本语言是它独有的,类似于宏汇编,语法有些怪异难懂。不过,功能还算强大,能调用Windows API,支持用动态链接库形式的扩展。虽然它的语法有些怪,但实际不并不难学,至少相对于Pascal而言,上手要容易些。

Inno Setup脚本语言则是基于Pascal的。工程文件象INI文件那样分成一段一段的,除Code段外,其它都是配置信息,Code段则是Pascal脚 本。如果你以前有Pacal的基础,那学习脚本编写应该相当容易。简单的安装可以根本不需要编写任何Pascal脚本。

3. IDE工具

NSIS图形化的好象没有,不过也没太大必要,拷贝一个例子,再在它的基础上进行一些修改,一个安装程序很快就会制作出来。所有的操作都能在文本编辑器中搞定,其实只要习惯了,这也挺好的。

Inno Setup则有ISTool,很好用,通过Wizard对话框一步步地设置就能生成安装程序的一个框架出来。然后,再在这个基础上添加脚本。说实话,配置部分如果不借助于这个辅助工具,自己写还是挺费事的。

4. 支持的Windows平台

5. 生成的安装包大小

6. 社区支持

总之,NSIS更简单简洁,Inno Setup更容易上手但进一步提高则可能更难一点。

对于像做安装包,基本一个产品只做一次,后期即使修改也是小范围,况且在不熟悉的情况下,摸索写出来的质量也难以保证,毕竟国内系统环境复杂,安装包又是产品的第一次运行,对于用户体验印象来说,很重要。所以还是建议找一些专门做的,比如NSetup一键部署软件(https://www.nsetup.cn)。一个开发工程师半天的工资就搞定了。事例中模版包含全部的脚本源码,以及界面资源,后期自己在照着维护即可。