NSIS安装包开发笔记(二):NSIS使用NSIS+Qt界面制作安装包流程

简介: NSIS安装包开发笔记(二):NSIS使用NSIS+Qt界面制作安装包流程

前言

  Nsis可以使用duilib也可以使用qt界面,笔者主要qt,本文章梳理nsis+qt制作安装包的基本流程。


下载Nsis-Ui-Plugin插件

  Github地址:https://github.com/sway913/NSIS-UI-Plugin

  QQ群下载地址:1047134658(点击“群文件”搜索“nsis”,群内与博文同步更新)


预先准备

  Qt+VS的编译环境,建议VS2015x86或者VS2017x86,一定要是32位版本的,默认就是32位,不支持64位的,后续编译nsis插件尝试过64位版本,卡了挺久,解决了蛮多问题,但是没有成功,不死磕了。

  编译环境:Qt5.13.1的msvc2017x86版本 + vs2017

  以上配环境对于老手来说也是有点费时间的,请自己百度,此处非本文重点。


编译Nsis-Ui-Plugun

步骤一:打开工程

  

步骤二:编译出现“”Qt version xxxxxx”

  

  设置一下,如下图:

  

  

步骤三:再次编译

  

  以上是编译过程,编译完成了。

步骤四:确认编译出的插件

  


使用Nsis插件

步骤一:添加软件环境变量

  两个环境变量,一个是NSIS_DIR,一个是QTDIR。

  安装的Nsis或者绿色的都行,如下图(笔者对软件重新打包整理了一整套文档流程):

  

  

  

  

步骤二:将编译的插件的release版本插件拷贝

  将编译出来的relase插件拷贝到软件的Plugins/x86-unicode下,此处备份一下最原始的,每次使用时就copy一份吧。

  

  

  (PS:用的是插件提供的qt版本的脚本,名字肯定不能改变,脚本中必定有对应的)。

步骤三:启动软件

  

  

步骤四:打开脚本

  

  

  

  (可以看看脚本,有些东西的学习还是有必要的,比如应用名称什么的可以与与Qt进行交互信息达到通过Qt来控制nsis脚本实现最终各种安装目的)。

步骤五:开始编译脚本

  

  然后,加载脚本

  

步骤六:运行提供的Demo安装包

  

  

  

  

步骤七:检查是否安装成功

  


部署发布的应用

  

  

  

   经测试,脚本只会安装卸载,修改应用名称和生成快捷方式,具体的文件copy等其他功能并未实现,所以需要读者自己用脚本实现了。



相关文章
|
2月前
|
编译器
【项目开发】QT简单练习之QQ登录界面模仿
为了进一步加深对QT开发的理解,在学习完基础操作之后要进行一个简单的练习。
|
3月前
|
开发工具 C++
qt开发技巧与三个问题点
本文介绍了三个Qt开发中的常见问题及其解决方法,并提供了一些实用的开发技巧。
|
3月前
|
4月前
|
C++
C++ Qt开发:QUdpSocket网络通信组件
QUdpSocket是Qt网络编程中一个非常有用的组件,它提供了在UDP协议下进行数据发送和接收的能力。通过简单的方法和信号,可以轻松实现基于UDP的网络通信。不过,需要注意的是,UDP协议本身不保证数据的可靠传输,因此在使用QUdpSocket时,可能需要在应用层实现一些机制来保证数据的完整性和顺序,或者选择在适用的场景下使用UDP协议。
198 2
Qt开发网络嗅探器02
Qt开发网络嗅探器02
|
4月前
|
网络协议 容器
Qt开发网络嗅探器03
Qt开发网络嗅探器03
|
4月前
QT 软件打包为一个单独可执行.exe文件流程
QT 软件打包为一个单独可执行.exe文件流程
928 0
|
5月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
198 1
Qt(C++)开发一款图片防盗用水印制作小工具
|
4月前
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
109 0
|
4月前
|
存储 运维 监控
Qt开发网络嗅探器01
Qt开发网络嗅探器01