12.nsis打包详解

一、前言

虽然对于大多数小程序来说,我们只需要将可执行文件发给其它人就能使用,但对于稍微复杂一点的应用程序,使用这种方法就比较麻烦了。

比如某些应用程序想要做以下事情:

  1. 向注册表写入数据
  2. 向配置文件写入数据
  3. 创建快捷方式

这些事情虽然也可以在我们的程序中完成,但大多数时候都是得不偿失的,因为这些步骤都相当的规范,而且很多时候也只是在程序第一次启动时需要。

如果只是为了这么一次操作、专门去写这一系列的控制代码,对于大部分开发者来说都是一种浪费精力的行为。

而打包程序要解决的便是这一系列问题,但并不仅仅只有上面提到的这些问题。

比如大家遇到的最烦心的事情可能就是软件“卸载不干净”。

尤其是一些单可执行文件、根本不提供相应的卸载程序,一旦你运行它,一般它都会向用户电脑写入各种数据、并且很多时候用完了也不会自动去清理。

此时一旦你不想使用该程序了,直接删除exe可执行文件肯定是不够的,你还得自己去找该软件在电脑中留下了哪些数据、然后手动去删除。

或者一些电脑管家、相应的软件也可以自动执行这一过程,但其实依旧不会太过精确,因为它们扫描的一般都是常用文件夹。

而通过为我们程序进行打包,便能很好的解决这个问题。

因为虽然用户不知道,但我们开发者是知道程序会在用户电脑的哪些目录内留有数据的,我们可以通过写脚本的方式,使其生成的卸载程序自动去删除相应的数据,就能很好的解决这一问题。

不同平台的打包程序并不完成相同,本文主要介绍用于windows平台的nsis打包程序,这是一个完全免费的、开源的打包程序。

其打包后的安装程序依旧是exe可执行文件,对其熟悉的人更多,都知道其是双击运行。

相应的还有一个叫做msi工具,是微软官方推出的一个打包工具,其打包后的文件后缀为.msi,如果你经常逛github可能遇到的比较多,很多开源项目都会提供.msi版本的安装包。

但其实对于很多新手来说,是并不知道.msi是打包文件、双击运行即可安装的。

所以总的来说,我个人还是更推荐大家使用nsis来制作安装包。

二、基本使用

其官方为NSIS,一般直接下载最新版即可:

image-20240225174612473

下载完成后,直接安装即可,中间所有选项直接默认就行、不用管,启动nsis后,软件界面如下:

image-20240225194237758

nsis软件有一套自己的脚本语言,所以想要完全掌握它,你需要对nsis中的各种脚本命令有一定的了解才行。

作者:余识
全部文章:0
会员文章:0
总阅读量:0
c/c++pythonrustJavaScriptwindowslinux