转载:https://www.cnblogs.com/zzllily/articles/5443850.html

转载:https://blog.csdn.net/bruce135lee/article/details/81977915

转载:http://www.nsisfans.com/(中文论坛)

转载:http://ggniu.cn/articles/nsniuniuskin.html(参考demo)

转载:https://blog.csdn.net/china_jeffery/article/details/79095060(基础教程)

转载:https://blog.csdn.net/qq_36651243/article/details/84101478

转载:https://www.virustotal.com(在线查杀安装包是否有病毒)

1.实现在控制面板添加帮助链接

自定义宏:

  1. !define PRODUCT_NAME "My application"
  2. !define PRODUCT_PATHNAME "My application" #安装卸载项用到的KEY
  3. !define INSTALL_APPEND_PATH "My application" #安装路径追加的名称
  4. !define INSTALL_DEFALT_SETUPPATH "" #默认生成的安装路径
  5. !define EXE_NAME "My.exe"
  6. !define PRODUCT_VERSION "1.0"
  7. !define PRODUCT_PUBLISHER "XXXX网络科技有限公司"
  8. !define PRODUCT_LEGAL "Copyright (C) 2018 XX网络"
  9. !define INSTALL_OUTPUT_NAME "My2.0.0.50301.exe"
  10. !define PRODUCT_PUBLISHER "My company, Inc."
  11. !define PRODUCT_WEB_SITE "http://www.mycompany.com" 

添加控制面板信息:

  1. # 添加卸载信息到控制面板
  2. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "DisplayName" "${PRODUCT_NAME}"
  3. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "UninstallString" "$INSTDIR\uninst.exe"
  4. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "DisplayIcon" "$INSTDIR\${EXE_NAME}"
  5. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "Publisher" "${PRODUCT_PUBLISHER}"
  6. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "DisplayVersion" "${PRODUCT_VERSION}"
  7. WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_PATHNAME}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"

2.官方NSIS:点击下载,根据向导一步步安装即可,安装完成后会在系统目录上有NSIS目录,里面就有用户手册和一些脚本例子,另外就是在脚本文件.nsi点击右键会出来NSIS快捷菜单,如下图所示:

3.编辑/IDE工具

编译环境都好了,接下来就该说到编辑脚本的工具了,最简单的是用文本文件,其实任何可以编辑文本文件的工具都可以,但一是没有任何格式不好看,再就是对于一个才开始编辑NSIS脚本的新手来说一头雾水,不知从何下手啊,好了,工具来了,下载HM NIS Edit最新版本,这是一个针对NSIS的免费的编辑/集成开发工具,安装后就可以使用啦,我能告诉你它不光让脚本更容易读写,最最打动我的其实是它的新建脚本向导功能,我在无从下手时通过向导生成的脚本省了很多工夫,也通过这些脚本更深刻的理解了脚本的结构和一些语法信息,再就是通过菜单NSIS可以直接编译脚本,脚本编译过程的输出信息会在输出界面显示,错误直接定位,界面如下所示:

修改后的:Demo

NSIS中文用户手册:下载

NSIS+Duilib 制作Windows安装包的更多相关文章

  1. NSIS制作安装包笔记(一):NSIS介绍、使用NSIS默认向导脚本制作Windows安装包

    前言   做产品时,定制的自定义安装界面常有的,使用NSIS + Qt可以完美的定制基于QT的安装界面,先从纯NSIS开始,制作常规的安装包.   应用程序的发布方式   应用程序发布的时候,具备以下 ...

  2. 利用NSIS软件制作C#安装包

    最近在做C#程序安装包,结果网上看到这个软件还是不错的,可以尝试以下. NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System) ...

  3. 使用NSIS脚本制作一个安装包

    大部分人第一次看到NSIS脚本都是一脸懵逼的.因为它这个脚本的结构乍一看上去就非常奇怪,不作说明的话是看不懂的. 编写脚本命令的时候要非常注意,命令要按照规定写在脚本中不同的段落里,也就是说,命令的先 ...

  4. 制作windows安装包的工具

    https://nsis.sourceforge.io/Download https://www.installaware.com/ https://www.advancedinstaller.com ...

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

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

  6. 使用WinRar软件制作程序安装包

    之前我写过使用好压软件打包程序,见随笔: 使用好压(HaoZip)软件打包EverEdit制作安装程序 - Fetty - 博客园http://www.cnblogs.com/fetty/p/4907 ...

  7. 7z制作自解压安装包

    像7z和winRAR这样的压缩工具都支持制作自解压的文件.所谓自解压的文件就是不需要目标机器上安装解压工具,通过运行压缩包自己即可解压出压缩包中的文件.下面我们就介绍一下如何利用7z的自解压功能制作应 ...

  8. DevExpress控件库 开发使用经验总结3 制作项目安装包

    2015-01-27 使用DevExpress控件包开发C/S项目完成后,部署前需要制作本地安装包.本文还是使用“SetupFactory”安装工厂来制作安装包.在以前的系列文章中详细介绍过该工具的使 ...

  9. 制作部署安装包:Inno Setup

    制作部署安装包:Inno Setup 前一篇尝试Office 2003 VSTO的开发.部署有提到用VS开发一个简单的VSTO程序.打包C/S程序,我首先想到的是VS里自带的Setup Project ...

随机推荐

  1. 阿里云esc服务器上部署java项目

    文章中使用centos(6和7版本).Xshell.Xftp 因为部署过程直接从操作服务器开始,如果你还没有连接好服务器请参考http://blog.csdn.net/ctrlxv/article/d ...

  2. sqli-labs(十二)(union以及select的过滤)

    第二十七关: 这关禁用了空格和select,空格还是可以使用()代替,select发现可以大小写绕过 输入?id=1'||extractvalue(1,concat(0x5c,(selEct(grou ...

  3. MyBatis基础入门《十六》缓存

    MyBatis基础入门<十六>缓存 >> 一级缓存 >> 二级缓存 >> MyBatis的全局cache配置 >> 在Mapper XML文 ...

  4. vue搭建环境并创建项目

    1.>npm install @vue/cli -g 2.创建项目A a.>vue ui b.在弹出的管理界面创建项目 或 a.npm install -g @vue/cli-init b ...

  5. Oracle表空间管理相关

    以下以我自己的测试环境举例: 1.表空间的 block_size 为 8192字节,即8KBytes.从数据字典中查到 max_size 为 2147483645,即约为15.9TBytes. 2.在 ...

  6. Unity之fragment shader中如何获得视口空间中的坐标

    2种方法: 1. 使用 VPOS 或 WPOS语义,如: Shader "Test/ScreenPos1" { SubShader { Pass { CGPROGRAM #prag ...

  7. URL Resources

    Prezi 1. 官网   https://prezi.com/ 2. 入门教程   https://wenku.baidu.com/view/9bb234ac0029bd64783e2c6b.htm ...

  8. Running tests on PyCharm using Robot Framework

    问题: I started using PyCharm with the robot framework, but i'm facing an issue. how can i run my test ...

  9. WEB应用程序:AJAX全套

    概述 对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上. 1.传统的Web应用 一个简单操作需要 ...

  10. QT 继承QWidget && 继承QDialog

    工作项目中,利用到Qt对话框,场景需求: 1. 一部分窗体需要继承自QWidget 2. 一部分窗体需要继承自QDialog 3. 两者均需要去掉标题栏图标,同时能够自由拖动. 如果两者分开继承实现, ...