NSIS(Nullsoft Scriptable Install System)开源安装程序制作软件使用详细步骤(Windows系统下)
NSIS(Nullsoft Scriptable Install System)开源安装程序制作软件使用详细步骤(Windows系统下)安装包制作
- 1.软件详情
- 软件版本
- 版本说明
- 翻译跟进
- 2.教程撰写起因
- 3.NSIS使用教程
1.软件详情
NSIS (Nullsoft Scriptable Install System)是一种在Windows系统下的开源安装程序制作软件。它提供了安装、卸载、系统设置、文件解压缩等功能。正如其名字所指出的那样,NSIS 是通过它的脚本语言来描述安装程序的行为和逻辑的。NSIS 的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。如果你想学习如何使用 NSIS , 可以仔细阅读这篇文章,了解一下 NSIS 的基本使用方法。
软件版本
我使用的 NSIS 软件是 3.06.1 的 中文增强版
- 下载地址
- 提取码: CSDN
版本说明
- 基于官方源码汉化编译、NSIS菜单界面、编译器界面及zip2exe;
- 并集成了由mefcl翻译的帮助文件,在此致谢!
- 集成可视化脚本编辑器 “VNISEdit” 中文增强版;
- 集成文本编辑器 “Notepad2-mod” ,支持代码高亮和行数显示;
- 更新部分.nsh文件到最新
- 更新部分例子到最新
- 更新部分插件到最新
- x86-unicode插件总共集成了141个
- Plugins_x86-ansi插件总共集成了337个
- 感谢: 蓝色网际、贾可、gfm688、X-Star、Zhfi、Ansifa、水晶石、星空不寂寞、junshaw 、似水年华、少轻狂、mefcl等大神为NSIS在国内的普及所作出的贡献致以崇高的敬意
翻译跟进
- Modern UI (1.81)
- Modern UI 2.1
- 帮助文件 NSIS.CHM 汉化更新至 3.0.5
2.教程撰写起因
我负责一个关于风机振动信号分析与故障诊断系统的项目,使用 Python 的pyinstaller将py文件打包为一个软件,发现其居然有1.3GB之多,并且小的动态链接库(.dll)很多,相信大家都知道这种琐碎的小文件移动起来耗费的时间很多。为了让该软件能够方便移动,我想到两种方法。一种是直接只用7z软件对其压缩,另一种是使用制作安装包的软件,所以我找到了 NSIS 。事实证明,NSIS挺好用,将1.3G的文件压缩到了285M !!!而且相比于前者,逼格不是一个等级的!
这里澄清一下,我是在建立虚拟环境后安装好必要的库后才进行打包的,我感觉已经比较小了。如果直接在Ancaonda的base环境下估计包会大到爆炸,当然这1.4G的包里还包含了Sqlite3生成的数据库文件,以及软件演示需要的csv文件等(大概300MB吧)。
3.NSIS使用教程
首先,我们解压NSIS软件到任意位置,打开文件夹可以看到如下的内容,我们点击其中的 NSIS.exe 运行该软件。
然后会弹出如下的一个界面,我们点击其中的HM VNISEdit(编译环境):
这样,该软件的编译环境就打开了!如下,我们点击菜单栏的文件选项。
会出现如下一个子菜单,这里我们点击新建脚本:向导:
然后就会出现如下的一个界面:
点击下一步,会让你填写你要制作的安装包的信息。对于下图的1、2、3、4、5可以照着它给的默认填写,没有网址就不填啦!
点击下一步,出现如下界面。首先在安装程序图标处,我们可以选择一个我们想要的图标作为该安装包最终的图标,这种图标要求格式为ico,网上可以随便找,我添加了一个皮卡丘的图标;然后在安装程序文件处,我们需要给生成的安装包命名;最后在安装程序语言处,我们选择默认的SimpChinese,也就是简体中文。
点击下一步,出现快闪屏幕的设置,我推荐不要整那些花里胡哨的,我前面试过加入闪屏(由于玩过热血江湖,热血江湖的安装包启动后会出现一个居中在屏幕当中的小图片,我也想做,也不知道是不是这个)但是后面编译出错了。有时间,有精力的小伙伴可以尝试研究下为什么出错。
直接点击下一步,是目录与授权部分,目录默认,会安装到C盘,在安装时用户可以自己更改安装的目标目录地址。另外,没有授权文件可以直接点击下一步(我也没有):
然后就到了安装包内容添加的步骤了,如下:
这里我们需要添加被安装的程序的所有文件及其启动文件(可执行文件.exe)
第一步:我们要删除默认的文件路径
第二步:加入被安装程序的所有文件,并勾选包含子目录
第三步:加入被安装程序的可执行文件(我这里是main_setup.exe)
如下安装文件都添加好后的界面:
点击下一步,如下:
点击下一步,如下:
接着点击下一步,这里的解除安装可以很快地将安装后的程序从你的计算机上移除:
接着下一步,也就是点点点的最后一步!!!
点击完成,如果操作都没有出错,会弹出如下界面,这个界面一出现就直接自动运行了,如果不想直接运行,建议在上一步不要点编译脚本:
这个界面会持续很长一段时间,视被打包的程序的大小而定(估计还有电脑的配置,越贵越快把 我选择了实验室的电脑,你懂的那种),我这个1.3G的有个20多分钟吧。经过漫长的等待,这个编译环境最下方会出现如下结果:
这里出现了一个警告warning,是个BUG吧(我运行了警告后的安装包,运行了也没啥感觉),如果强迫症可以在这个脚本开头加入一行:Unicode true,重新编译即可。重新等待20多分钟可出现一下结果(气抖冷,实验室电脑什么时候可以站起来!!!)。
最最最最最后,就是安装包的使用体验了,开始,大搞特搞:
首先来看下安装包的压缩效率:
利用NSIS制作安装包前
利用NSIS制作安装包后
果然是吧,1.3G变成0.285G,简直是布尔玛的胶囊!!!
我们运行WTs Fault Dignosis System.exe(突然发现单词写错了diagnosis 麻了)如下:
嗯,非常有内味了
由于已经安装过一次,所以这里都是跳过。
安装速度也是非常的快!!!
最后,放一下我的系统运行后的登录界面:
到此结束,谢谢!
NSIS(Nullsoft Scriptable Install System)开源安装程序制作软件使用详细步骤(Windows系统下)相关推荐
- 安装包制作工具NSIS (NullSoft Scriptable Install System)
使用NSIS (NullSoft Scriptable Install System)制作安装程序快速指南 转:http://xltx.blog.hexun.com/32224064_d.html N ...
- NSIS (NullSoft Scriptable Install System)使用指北(超详细)
转:http://xltx.blog.hexun.com/32224064_d.html Nullsoft Installation System 是一个小巧高效的安装软件.可通过样例修改或根据自己要 ...
- Sonic 开源移动端云真机测试平台 - windows系统下的sonic快速部署演示
Sonic 开源移动端云真机测试平台快速部署演示 第一章:Sonic 平台的准备工作与快速部署 ① Docker 的安装 ② MySQL 的安装 ③ docker-compose.yml 文件配置 ④ ...
- Macbook Pro Bootcamp 安装触控板驱动mac-precision-touchpad在Windows系统下实现更好的触控板操作
由于很多软件的限制,所以不得不在Windows和MacOS之间进行切换,然而,Windows下虽然Bootcamp提供了触控板的驱动,然而只能实现简单的上下滑动和点击等操作,而且在滑动页面的时候滑动非 ...
- php做网站步骤_PHP网站安装程序制作的原理、步骤、注意事项和示例代码
其实PHP程序的安装原理无非就是将数据库结构和内容导入到相应的数据库中,从这个过程中重新配置连接数据库的参数和文件,为了保证不被别人恶意使用安装文件,当安装完成后需要修改安装文件. 1.制作PHP安装 ...
- oracle11系统安装,Windows系统下安装Oracle 11g R2教程,oracle11g
Windows系统下安装Oracle 11g R2教程,oracle11g Windows系统下安装Oracle 11g R2教程 Oracle 11g 共有两个大的版本,一个R1(Release 1 ...
- 关于安装程序制作的简明教程(一)
关于安装程序制作的简明教程(一) Vitamin C[抗坏血酸].2002.3.11.ZJ.GD.CHI. 前段时间我完成了几个软件的汉化,想把它们打包起来,可是苦于我是一个很菜的鸟,很笨的瓜,只好上 ...
- .net Windows服务程序和安装程序制作图解
最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作不成功,可能是开发环境或项目配置的不同,这里把自 ...
- C# 安装程序制作,如何添加第三方DLL以及自定义的文件夹(如uploadFiles 文件夹)
项目基本的安装程序制作,可参考: http://blog.csdn.net/kezhen/article/details/17732615 http://blog.csdn.net/kezhen/ar ...
最新文章
- 计算机通过路由器连接打印机共享的打印机,如何利用无线路由器进行打印机共享访问操作...
- MySQL创建数据表(CREATE TABLE语句)
- Python常用模块之time模块
- linux 软raid创建过程
- 设置Proxy Server和SQL Server实现数据库安全
- ubuntu下安装php redis
- c语言开发破解pdf软件,ARM处理器与C语言开发应用(第2版) PDF
- 微信小程序|开发实战篇之一
- 关于Unity中Mesh网格的详解
- jieba结巴分词--关键词抽取(核心词抽取)
- Python装饰器的原理与应用
- burpsuite的基本操作_burpsuite安装与基本使用
- 小程序 房租水电费记录管理_收租小程序开发有哪些功能和优势?
- kudu tablet的设计
- Vue使用createWebHistory 页面刷新变成白页 解决
- S7-200PLC寄存器寻址
- mysql上线脚本规范_专业规范的mysql启停脚本
- android摇骰子动画,Android实现微信摇骰子游戏
- 算法习题---5-3卡牌游戏(UVa10935)
- python京东抢购手机攻略_Python实现自动上京东抢手机
热门文章
- Concurrent LRUCache
- CoreDNS篇4-编译安装unbound
- Solidity中的变量种类以及常见的全局变量
- Error mounting /dev/sda3 at /media/user/Windows
- 多拉送了一些鸡蛋给圭多,意味深长地目送他远去。
- 教师信息管理系统设计(C语言)
- AR模型中方差计算——Green函数
- FIDO(身份认证标准):UAF(终端认证+私钥加签)/U2F
- Linux中DNS服务
- Ubuntu安装SSH服务和NFS服务、TFTP服务