前言

  做产品时,定制的自定义安装界面常有的,使用NSIS + Qt可以完美的定制基于QT的安装界面,先从纯NSIS开始,制作常规的安装包。

 

应用程序的发布方式

  应用程序发布的时候,具备以下两种方式:

  • 静态编译:把相关联的库一并引入可执行程序,虽然发布简单,编译出来只有一个exe文件。(特别注意:编译时,其依赖的库也需要使用静态包)。
  • 动态编译:把相关联的库以dll的形式提供(linux下是.so)引入,不被包含进可执行程序,发布不方便,但可执行程序较小。
    预先准备工具
    Qt应用需要先打包,使用windeployqt,建议打包后到无环境的对应系统的虚拟机上尝试。
    具体直接略,不会的请百度。
      
 

Windows下安装与卸载

安装

  在windows下,很多程序运行起来,会有一系列安装,勾选用户协议,自定义的安装界面,安装之后对应的路径放置应用的程序文件,创建开始菜单文件夹,放置桌面快捷方式,任务栏也可能有固定图标,
  以上情况,安装包就需要单独定制了,如Qt的安装包,其他产品的安装包:
  
  以上Qt的界面确实不太漂亮,漂亮的界面是需要美工做主题的,怀疑Qt公司没有ui设计参与。
  还有很多其他安装界面:
  

卸载

  卸载界面也可以定制,当然会增加一定的工作量,如下图:
  

 

NSIS软件

  Nsis其实是使用一种脚本语言了,学习成本肯定是不低的。
  采用NSIS + QT 制作安装程序实际上就是使用QT制作安装程序,而NSIS仅仅将制作的安装程序打包成一个exe。

下载

安装

  
  
  
  

 

NSIS使用向导生成安装包

  可勾选用户协议,可选择安装路径,并且在开始菜单和桌面创建图标。

步骤一:启用应用,打开脚本编辑器

  一般需要用到的就是“编译NSI脚本”和“脚本编辑器(VNISEdit)”。
  
  

步骤二:新建向导脚本(自带内置)

  使用向导基本进行建立,可满足常规的一些应用安装过程:
  
  
  
  
  
  
  
  
  
  
  生成了脚本:
  
  保存为脚本:
   
  至此,可以关闭脚本编辑器了(注意:最好留着,后边边调试脚本边编译测试)。

步骤三:编译NISI脚本

  切到主界面,打开NSI脚本编译器,对脚本进行编译:
  
  加载脚本:
  
  加载之中(copy文件等操作):
  
  加载完成:
  

步骤四:测试安装程序

  向导生成的安装过程:
   
  
  
  
  
  

步骤五:测试成功

  
  

步骤六:测试卸载

  
  
  
  (注意:图标出来了,这个地方前面需要再调试,因为前面的图标没有出,读者自己调试吧,挺费时间的)。

 

上一篇:无
下一篇:《NSIS制作安装包笔记(二):NSIS使用NSIS+Qt界面制作安装包流程》(即将发布)

NSIS制作安装包笔记(一):NSIS介绍、使用NSIS默认向导脚本制作Windows安装包的更多相关文章

  1. C# Note19: Windows安装包制作实践

    前言 最近在项目中需要不断更新新版本的software installer(软件安装包),于是便查阅资料,整理了下制作方法. NSIS安装包制作脚本 NSIS(Nullsoft Scriptable ...

  2. InterSystems Ensemble学习笔记(一) Ensemble介绍及安装

    系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...

  3. Jmeter介绍以及脚本制作与调试

    目录 Jmeter介绍 Jmeter安装 Jmeter主要测试组件 Jmeter元件作用域与执行顺序 Jmeter运行原理 Jmeter脚本制作 Jmeter脚本调试 Jmeter介绍 Jmeter ...

  4. HTML+CSS学习笔记(1) - Html介绍

    HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...

  5. cocos2d-x入门学习笔记,主要介绍cocos2d-x的基本结构,并且介绍引擎自带的示例

    cocos2d-x 3.0 制作横版格斗游戏 http://philon.cn/post/cocos2d-x-3.0-zhi-zuo-heng-ban-ge-dou-you-xi http://blo ...

  6. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  7. 解决octave for windows安装包无法通过SourceForge下载的问题

    近期SourceForge访问不了,可以通过访问SourceForge的ftp镜像ftp://sourceforge.nchc.org.tw/进行下载: ftp下载工具可以使用FileZilla,可在 ...

  8. Typescript 学习笔记一:介绍、安装、编译

    前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...

  9. Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍

    原文:Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本 ...

随机推荐

  1. SQL驱动限制,导致插入失败

    insert into TB_IF_ORDERS (DC_CD,JOB_DT,SEQ_NO,ORDER_KEY,ORDER_ID,ORDER_LINE_NUM,COMPANY_CD,CUST_CD,S ...

  2. ACM常用的C++ && STL

    内容 c++输入输出 c++ string vector:不定长数组 map:映射 queue:队列 sort:排序 priority_queue:优先队列 c++输入输出 1 #include &l ...

  3. python 画图中文显示问题

    在python文件当前目录下添加simsun.ttc(资源网上下载即可,有很多) 代码如下: plt.title("标题", fontproperties='SimHei', si ...

  4. python stats画正态分布、指数分布、对数正态分布的QQ图

    stats.probplot(grade, dist=stats.norm, plot=plt) #正态分布 # stats.probplot(grade, dist=stats.expon, plo ...

  5. CF524F And Yet Another Bracket Sequence 题解

    题目链接 算法:后缀数组+ST表+贪心   各路题解都没怎么看懂,只会常数巨大的后缀数组+ST表,最大点用时 \(4s\), 刚好可以过... 确定合法序列长度   首先一个括号序列是合法的必须满足以 ...

  6. 使用 dynamic 类型让 ASP.NET Core 实现 HATEOAS 结构的 RESTful API

    上一篇写的是使用静态基类方法的实现步骤:  http://www.cnblogs.com/cgzl/p/8726805.html 使用dynamic (ExpandoObject)的好处就是可以动态组 ...

  7. JAVA题目:正整数n若是其平方数的尾部,则称n为同构数 如:5*5=25, 25*25=625 问: 求1~99中的所有同构数

    1 /*题目:正整数n若是其平方数的尾部,则称n为同构数 2 如:5*5=25, 25*25=625 3 问: 求1~99中的所有同构数 4 */ 5 //分析:将1-99分为1-9和10-99,用取 ...

  8. 前端vue使用高德地图

    首先,注册Key 1.注册开发者账号,成为高德开放平台开发者 2.登陆之后,在进入「应用管理」 页面「创建新应用」 3.为应用添加 Key,「服务平台」一项请选择「 Web 端 ( JSAPI ) 」 ...

  9. CVE-2020-1472 Zerologon

    CVE-2020-1472 Zerologon 漏洞简介 CVE-2020-1472是继MS17010之后一个比较好用的内网提权漏洞,影响Windows Server 2008R 2至Windows ...

  10. Webpack的基本配置和打包与介绍

    1. 前言 1.1 Webpack是什么 可能有很多的小伙伴对于这个Webpack既熟悉又陌生,有一些刚开始接触vue的小伙伴在对项目进行打包的时候经常会使用到npm run build来进行打包,但 ...