美文网首页
Windows平台简易程序安装包发布方法

Windows平台简易程序安装包发布方法

作者: 仍是少年呀 | 来源:发表于2016-03-29 22:59 被阅读1447次

前言

上个学期专门研究了如何高逼格的打包我自己开发的应用程序,起初是打算从单纯的压缩包改成可自解压的压缩包,但是这还是个压缩包,还是LOW。之后在网络上搜索了半天,发现了NSIS这个工具,这个很棒,使用脚本语言编译安装程序,当然这个不是最棒的,最棒的在于支持可视化的安装程序设计,自动生成代码。但是我高兴的太早,自动生成的代码有错,呵呵哒。但是经过一天的摸索,终于搞懂了它其中脚本语言的大致语法,修改了错误,并添加相应代码实现了桌面快捷方式和开始菜单快捷方式的创建。为了造福大家,也为了防止遗忘,特以此次上位机的程序打包为例,做此教程。

开始前准备

1.NSIS下载    http://pan.baidu.com/s/1hr5SS6o

2.安装NSIS

3.准备好你想打包的程序,最好把他们f放在一个文件夹里

如图,这便是我制作的程序所有内容所在的文件夹

运行NSIS,如图

运行可视化脚本编辑器

打开后如图,运行可视化脚本编辑器

运行后弹出欢迎

我们选择第二项,使用脚本向导创建新的脚本文件

之后如图

显然,下一步

基本信息的录入

我写的程序是串口调试工具,所以就叫他SerialPort好了,第一版,就叫1.0好了,出版人,Fuermohao,后面两项就算了,网页你可以随意贴一个你的博客什么的吧,若是公司那就写你的公司域名,标志我就空着好了,你有兴趣自己添加。填好后如图

程序基本信息完成

还等什么,下一步

这里,我们设置安装程序的语言,安装包的名字,安装界面

安装程序图标,我找了个好看的,放到了桌面

选择安装包程序图标

安装包名字就叫Setup.exe吧,安装图形界面就选经典好了。安装程序语言,默认是简体中文,已经勾选,为了和国际接轨,我们再把英语勾选上吧(装逼要国际化)。

勾选English

接着下一步,如图,设置安装界面的窗口颜色和闪屏属性的。

这页不用管

就我个人而言,简单点好,安装程序就不要太多特效了,闪屏看着没啥意思,背景音乐什么的容易被拉黑,这页直接下一步吧。

目录和授权文件

第一行默认就好,我们安装之前一般默认是C盘的Programfiles这个目录,下面的允许用户更改目录是默认勾选的。接下来的授权文件,装逼的时候又到了。在你桌面建一个TXT文档吧~怎么装逼怎么写。

授权文件

我的授权文件即这个  1.txt ,选中它就好,下面的几个按钮你们随意选吧,看你喜好。下一步。      PS:千万别选古典按钮,有很大几率这个古典按钮会导致BUG,这个BUG会让你选择文件安装路径环节直接被跳过。

打包的目录

先把这个两个默认的实例路径删了。选中,点上面的 X。

删除之后

新建一个路径。点文件上面那个A4纸的LOGO。

选择路径

在选择目录的地方找到你要打包的文件夹。我的在桌面,叫SerialPort。然后需要注意的一点目的目录后面需要添加 通配符 "\*.*",然后下面的包含子目录需要勾选。

添加 通配符 "\*.*"

确定,然后下一步。

快捷方式的创建

这步很关键。文件夹名称会被添加在开始菜单中,我是WIN10系统,添加好后会在这里建一个文件夹,如图360之类的

开始菜单示例

我们创建一个桌面快捷方式

创建桌面快捷方式

我们选择DESKTOP,创建的快捷方式肯定是.exe文件的,所以要把路径写清楚。  目的需要改成"$INSTDIR\ASA_Serial_Port.exe"

找到你的EXE文件,把文件路径找好 创建桌面快捷方式

接下来创建一个开始菜单的快捷方式,选择STARTMENU

创建开始菜单的快捷方式

确定,下一步

这一步,可略,有兴趣自己研究吧,篇幅有限,这里不再赘述。直接下一步。

卸载方式,我们改个图标就好了。

更改卸载程序的图标

一切OK,确定即可。

完成

点击完成,之后自动生成了脚本文件,并在编译器中打开。

自动生成脚本文件

看到上面的NSIS了吗,点击它,并选择 编译并运行 ,然后会提示你先保存文件,选个位置吧,我放在了桌面,这样最后打包好的安装包也在桌面。

提示出错

如上,编译后后报错,但不用管,无伤大雅。现在看看桌面

安装包

安装包有了~试着装装看!

逼格有木有 安装向导界面 协议问询界面

装完之后,你会发现 桌面并没有快捷方式。接下来,我们一起改改自动生成的代码。打开这个脚本文件。

脚本文件

我们看到 ------ MUI 现代界面定义结束 ------这一行之后,找到                   Section -AdditionalIcons  这个模块

Section -AdditionalIcons

我们局部放大,当然我这是改好之后的。你可以发现有什么不同。

局部放大

在你安装好之后,你应该会发现,在你的开始菜单的文件夹中会有一个卸载的图标。这个图标来源于

CreateDirectory "$SMPROGRAMS\SerialPort"

CreateShortCut "$SMPROGRAMS\SerialPort\Uninstall.lnk" "$INSTDIR\uninst.exe"

根据这些个英文单词的意思,很容易理解这个快捷方式的添加原理。我们需要先创建一个路径,用CreateDirectory来声明这个路径。这个路径是干嘛的呢,显然,是你的快捷方式要生成的父文件夹路径。比如,我们要在开始屏幕生成一个文件夹用来存放快捷方式,所以“$SMPROGRAMS”就代表STARTMENU的程序文件夹。之后,我们需要用CreateShortCut来声明创建的快捷方式源对象和快捷方式。当然,我们的exe在文件夹目录中,那么你安装的位置不同路径就会不一样,所以考虑到此,有一个相对路径和绝对路径的概念。而$INSTDIR就是一个相对路径的标识符,它指明了你程序当前所在的文件夹路径。我想,在此也不必过多赘述,之后怎么修改就看你的了,上面的截图也给出了示例。如果你真的弄明白了,你会发现我其中有行代码在做无用功。

那么,修改好代码之后,再次编译运行吧!这下,快捷方式就能成功的发到桌面了。

在此,你可能会问,为什么快捷方式直接创建不能成功?嗯,原谅我写教程就是喜欢先带你们入坑。首先笔者需要说明,整个教程也是我自己学习打包方法的一个认知过程,是在经验主义上总结出的。好了,开始回答你心中的疑惑。

修正

我们在之上的那一步犯了一个错误,错误在于,我们只是添加了源对象的路径,并没有详细写出快捷方式的路径,起初我以为是自动生成,后来我仔细想了想才发现这里应该按代码那样把快捷方式那栏补全  "$DESKTOP\SerialPort.lnk"

以上,既是整个程序安装包打包流程。望采纳打赏。如果你在此教程中遇到异常的问题 可与我讨论。

                                                    在此留下我的邮箱:Fuermohao@outlook.com

相关文章

网友评论

      本文标题:Windows平台简易程序安装包发布方法

      本文链接:https://www.haomeiwen.com/subject/xdajlttx.html