我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

鉴于nsis打包工具的原版工具的丑陋和难于使用,苏南大叔在以前的文章中,推荐大家使用innosetup打包electron。最近苏南大叔重新审视了一下nsis相关工具,觉得还是有必要给nsis平反一下。

苏南大叔:如何利用nsis制作electron的安装包? - electron-nsis
如何利用nsis制作electron的安装包?(图46-1)

nsis的官方版本确实难用,但是相关的第三方软件,还是非常强大好用的,可以弥补官方版本的不足。其实,这第三方软件的主要的优点就是:对于小白新人来说,更加易于傻瓜式操作。

相关软件

这个nsis的生态来说,建议大家看看下面几个软件包。

基础编译器nsis

第一个就是官方的nsis,虽然一直有更新,但是打开之后,毫无任何的操作欲望,易用性极差。下载地址:http://nsis.sourceforge.net/Download

苏南大叔:如何利用nsis制作electron的安装包? - 003
如何利用nsis制作electron的安装包?(图46-2)

苏南大叔:如何利用nsis制作electron的安装包? - 005
如何利用nsis制作electron的安装包?(图46-3)

辅助编辑器HMNiseditor

第二个HMNiseditor,这个是第三方提供的软件,完全弥补nsis官方版本难用的大问题。但很多年没有更新了,版本停留在2.0.3。下载地址:

苏南大叔:如何利用nsis制作electron的安装包? - 000
如何利用nsis制作electron的安装包?(图46-4)

苏南大叔:如何利用nsis制作electron的安装包? - 002
如何利用nsis制作electron的安装包?(图46-5)

当然值得一提的是,官方还有提供一个iss2nsi程序,是用于转化innosetup的脚本为nsis脚本的。如果你有需求,可以研究一下。

苏南大叔:如何利用nsis制作electron的安装包? - 0001
如何利用nsis制作electron的安装包?(图46-6)

合集版nsis

第三个是中文汉化版的nsis生态合集,包含经典版的nsis(并不是最新版)、增强版的HMNiseditor,还有其他相关插件,功能很好很强大。截至到发文,最新版本是2.0.3-20171230,不过必须注册他们的论坛,才能下载到最新版本。下载地址:

苏南大叔:如何利用nsis制作electron的安装包? - 054
如何利用nsis制作electron的安装包?(图46-7)

苏南大叔:如何利用nsis制作electron的安装包? - 050
如何利用nsis制作electron的安装包?(图46-8)

HMNiseditor

本文的主角就是HMNiseditor了,这款软件并不包含nsis这个编译器,所以还是要额外安装nsis编译器的。相对而言,innosetup是仅仅安装官方版本,就可以拥有上述两项功能的。所以,这一点上来说,nsis做的并不好。

HMNiseditor里面有个很好很强大的向导模式,下里的截图,主要以原版的HMNiseditor为准。

原版的HMNiseditorinnosetup进行向导模式对比的话。个人认为:HMNiseditor更胜一筹,比如在inno中,需要苏南大叔单独设置的图标问题,HMNiseditor都是可以在向导模式里面给出的。具体见文末链接。

苏南大叔:如何利用nsis制作electron的安装包? - 006
如何利用nsis制作electron的安装包?(图46-9)

苏南大叔:如何利用nsis制作electron的安装包? - 007
如何利用nsis制作electron的安装包?(图46-10)

苏南大叔:如何利用nsis制作electron的安装包? - 008
如何利用nsis制作electron的安装包?(图46-11)

注意这里的压缩算法,可以控制最终的文件的体积大小。

苏南大叔:如何利用nsis制作electron的安装包? - 009
如何利用nsis制作electron的安装包?(图46-12)

没有语言包的话,请重新用管理员模式,启动这个软件,就可以出现语言包列表了。如果还是没有的话,请检查您的电脑系统里面是不是除了安装HMNiseditor外,还安装了nsis这个基础软件。

出现列表后,这里需要选择simpchinese这个选项,可以在键盘上按s来快速寻找simpchinese这个选项。

苏南大叔:如何利用nsis制作electron的安装包? - 010
如何利用nsis制作electron的安装包?(图46-13)

苏南大叔:如何利用nsis制作electron的安装包? - 012
如何利用nsis制作electron的安装包?(图46-14)

苏南大叔:如何利用nsis制作electron的安装包? - 011
如何利用nsis制作electron的安装包?(图46-15)

苏南大叔:如何利用nsis制作electron的安装包? - 013
如何利用nsis制作electron的安装包?(图46-16)

这里需要把默认的这两个文件,删除掉。再添加我们的exe相关文件即可。

苏南大叔:如何利用nsis制作electron的安装包? - 014
如何利用nsis制作electron的安装包?(图46-17)

苏南大叔:如何利用nsis制作electron的安装包? - 015
如何利用nsis制作electron的安装包?(图46-18)

苏南大叔:如何利用nsis制作electron的安装包? - 016
如何利用nsis制作electron的安装包?(图46-19)

苏南大叔:如何利用nsis制作electron的安装包? - 017
如何利用nsis制作electron的安装包?(图46-20)

苏南大叔:如何利用nsis制作electron的安装包? - 018
如何利用nsis制作electron的安装包?(图46-21)

苏南大叔:如何利用nsis制作electron的安装包? - 019
如何利用nsis制作electron的安装包?(图46-22)

苏南大叔:如何利用nsis制作electron的安装包? - 020
如何利用nsis制作electron的安装包?(图46-23)

苏南大叔:如何利用nsis制作electron的安装包? - 021
如何利用nsis制作electron的安装包?(图46-24)

这里,主要把三个选项都选上,向导完毕保存脚本文件,并直接编译成setup.exe,这个是最简单的使用途径。

苏南大叔:如何利用nsis制作electron的安装包? - 022
如何利用nsis制作electron的安装包?(图46-25)

苏南大叔:如何利用nsis制作electron的安装包? - 023
如何利用nsis制作electron的安装包?(图46-26)

苏南大叔:如何利用nsis制作electron的安装包? - 024
如何利用nsis制作electron的安装包?(图46-27)

当然,如果哪里出错了,点击出错的提示,就可以快速定位到相关的出错位置。

苏南大叔:如何利用nsis制作electron的安装包? - 025
如何利用nsis制作electron的安装包?(图46-28)

苏南大叔:如何利用nsis制作electron的安装包? - 026
如何利用nsis制作electron的安装包?(图46-29)

得到的setup.exe执行之后,就可以开始查看我们的最终效果了。下面的截图,都是默认效果的截图。

苏南大叔:如何利用nsis制作electron的安装包? - 030
如何利用nsis制作electron的安装包?(图46-30)

苏南大叔:如何利用nsis制作electron的安装包? - 031
如何利用nsis制作electron的安装包?(图46-31)

苏南大叔:如何利用nsis制作electron的安装包? - 032
如何利用nsis制作electron的安装包?(图46-32)

苏南大叔:如何利用nsis制作electron的安装包? - 034
如何利用nsis制作electron的安装包?(图46-33)

HMNiseditor增强版vs原版

苏南大叔推荐大家下载使用,上述nsis生态合集中的国人修改版HMNiseditor,很好很强大,比原版来说,增加了一些选项(当然,其实也没有特别大的用途)。但是,里面的压缩选项里面,确有个最大压缩比的压缩算法。可以更好地解决electron体积大的问题,是非常值得尝试的功能。

苏南大叔:如何利用nsis制作electron的安装包? - 050
如何利用nsis制作electron的安装包?(图46-34)

苏南大叔:如何利用nsis制作electron的安装包? - 051
如何利用nsis制作electron的安装包?(图46-35)

苏南大叔:如何利用nsis制作electron的安装包? - 052
如何利用nsis制作electron的安装包?(图46-36)

苏南大叔:如何利用nsis制作electron的安装包? - 053
如何利用nsis制作electron的安装包?(图46-37)

苏南大叔:如何利用nsis制作electron的安装包? - 060
如何利用nsis制作electron的安装包?(图46-38)

压缩算法有很多个,默认的LZMA压缩比效果非常好。语言包simpchinese,也是默认选择的。

苏南大叔:如何利用nsis制作electron的安装包? - 061
如何利用nsis制作electron的安装包?(图46-39)

苏南大叔:如何利用nsis制作electron的安装包? - 062
如何利用nsis制作electron的安装包?(图46-40)

增强版的下面这个新增功能,做的不是太好。默认并没有选中下面的这两个选项:包含子目录单独添加某个文件,需要手工操作一下,否则,后续操作中,将不能自动识别electron的主程序exe的位置。官方版的是没有这个问题的。

苏南大叔:如何利用nsis制作electron的安装包? - 063
如何利用nsis制作electron的安装包?(图46-41)

苏南大叔:如何利用nsis制作electron的安装包? - 064
如何利用nsis制作electron的安装包?(图46-42)

需要管理员模式运行,否则,你也许可以看到下面的提示:

苏南大叔:如何利用nsis制作electron的安装包? - 065
如何利用nsis制作electron的安装包?(图46-43)

增强版HMNiseditor处理压缩功能对比

增强版的HMNiseditor,里面的文件压缩模式比官方版本更多。其中官方也有的LZMA效果不错,但是增强版中的极限压缩,效果更好些。

官方版有三种压缩方式,默认是效果不是太好的zlib

苏南大叔:如何利用nsis制作electron的安装包? - 067
如何利用nsis制作electron的安装包?(图46-44)

增强版有七种压缩方式,默认是效果不错的LZMA

苏南大叔:如何利用nsis制作electron的安装包? - 068
如何利用nsis制作electron的安装包?(图46-45)

苏南大叔,对electron-quick-start项目进行了压缩对比处理,效果如下。大家可以看到,增强版的极限压缩效果不错,得到了36M的效果,推荐使用。

苏南大叔:如何利用nsis制作electron的安装包? - 070
如何利用nsis制作electron的安装包?(图46-46)

相关链接

总结

如果使用增强版的HMNiseditor,使用极限压缩模式,外加官方版的nsis的话,似乎是不错的选择。当然,这个nsis和innosetup一样,本教程对于任何的exe都是适用的,并不仅针对electron的项目。

更多的electron的经验文章,请点击这里查看。https://newsn.net/tag/electron/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   electron    innosetup