[NSIS] 用NSIS做一个软件升级安装包
2006-08-01 17:38
1466 查看
在《NSIS使用心得 I》这篇中简要介绍了一下NSIS的脚本编写,通过文章中的介绍相信各位高手很快就做了一个有特色的程序安装包了。但相信不是每个人写的软件都只发布一次就可以了,肯定要有修改和维护的情况发生。在这种情况下,您可能就需要一个程序的升级安装包了。
下面介绍一个简单的升级安装包的制作。(如果有更好的升级方法,希望各位高手能发表评论,我也好学习学习)
/* ----------------------------------------------------------------------*/
!define PRODUCT_NAME "产品名称"
!define PRODUCT_VERSION "产品版本号"
!define PRODUCT_PUBLISHER "产品发布者"
!define PRODUCT_DIR_REGKEY "Software/Microsoft/Windows/CurrentVersion/App Paths/产品.exe"
!define PRODUCT_UNINST_KEY "Software/Microsoft/Windwos/CurrentVersion/Uninstall/${PRODUCT_NAME}"
SetCompressor lzma
!include "MUI.nsh"
!include "StrFunc.nsh"
!include "Library.nsh"
!define MUI_ABORTWARING
!define MUI_ICON "../ICON/install.ico" #安装包图标
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_RIGHT
!define MUI_HEADERIMAGE_BITMAP "../ICON/LOGO.bmp" #软件公司、个性图片
!define MUI_WELCOMEPAGE_TITLE "欢迎使用“产品名称”安装向导"
!define MUI_WELCOMEPAGE_TEXT "/r/n这个安装向导将指引你完成“产品名称”的升级安装过程。/r/n/r/n开始安装前,建议先关闭其他所有应用程序。这将允许“升级程序”更新指定的系统软件,而不需要重新启动计算机。/r/n/r/n$_CLICK"
!insertmacro MUI_PAGE_WELCOME
!define MUI_LICENSEPAGE_TEXT_TOP "阅读协议的其余部分,请按<PgDn>向下滚动页面。"
!define MUI_LICENSEPAGE_TEXT_BOTTOM "如果您同意协议中的条款,请选择“接受协议中的条款”并$_CLICK"
!define MUI_LICENSEPAGE_RADIOBUTTONS
!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT "接受协议中的条款"
!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE "不接受协议中的条款"
!insertmacro MUI_PAGE_LICENSE "../License.txt"
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "SimpChinese"
Name "产品名称"
OutFile "upgrade.exe"
InstallDir "$PROGRAMFILES/产品名称"
InstallDirRegKey HKCU "Software/产品名称" "" #读取上篇文章中写入注册表中的程序安装路径信息
ShowInstDetails nevershow
ShowUninstDetails nevershow
BrandingText "NSIS" #安装界面左下角显示的文字,默认是Nullsoft Install System vX.XX
Section -Upgrade
SetDetailsPrint textonly
DetailPrint "正在安装必须的程序组件..."
SetDetailsPrint none
SetAutoClose true
SetOutPath $INSTDIR
File "产品.exe"
SectionEnd
/* ----------------------------------------------------------------------*/
^_^,升级程序完成了,简单吧。多一些人来加入NSIS吧,哈哈!
下面介绍一个简单的升级安装包的制作。(如果有更好的升级方法,希望各位高手能发表评论,我也好学习学习)
/* ----------------------------------------------------------------------*/
!define PRODUCT_NAME "产品名称"
!define PRODUCT_VERSION "产品版本号"
!define PRODUCT_PUBLISHER "产品发布者"
!define PRODUCT_DIR_REGKEY "Software/Microsoft/Windows/CurrentVersion/App Paths/产品.exe"
!define PRODUCT_UNINST_KEY "Software/Microsoft/Windwos/CurrentVersion/Uninstall/${PRODUCT_NAME}"
SetCompressor lzma
!include "MUI.nsh"
!include "StrFunc.nsh"
!include "Library.nsh"
!define MUI_ABORTWARING
!define MUI_ICON "../ICON/install.ico" #安装包图标
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_RIGHT
!define MUI_HEADERIMAGE_BITMAP "../ICON/LOGO.bmp" #软件公司、个性图片
!define MUI_WELCOMEPAGE_TITLE "欢迎使用“产品名称”安装向导"
!define MUI_WELCOMEPAGE_TEXT "/r/n这个安装向导将指引你完成“产品名称”的升级安装过程。/r/n/r/n开始安装前,建议先关闭其他所有应用程序。这将允许“升级程序”更新指定的系统软件,而不需要重新启动计算机。/r/n/r/n$_CLICK"
!insertmacro MUI_PAGE_WELCOME
!define MUI_LICENSEPAGE_TEXT_TOP "阅读协议的其余部分,请按<PgDn>向下滚动页面。"
!define MUI_LICENSEPAGE_TEXT_BOTTOM "如果您同意协议中的条款,请选择“接受协议中的条款”并$_CLICK"
!define MUI_LICENSEPAGE_RADIOBUTTONS
!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT "接受协议中的条款"
!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE "不接受协议中的条款"
!insertmacro MUI_PAGE_LICENSE "../License.txt"
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "SimpChinese"
Name "产品名称"
OutFile "upgrade.exe"
InstallDir "$PROGRAMFILES/产品名称"
InstallDirRegKey HKCU "Software/产品名称" "" #读取上篇文章中写入注册表中的程序安装路径信息
ShowInstDetails nevershow
ShowUninstDetails nevershow
BrandingText "NSIS" #安装界面左下角显示的文字,默认是Nullsoft Install System vX.XX
Section -Upgrade
SetDetailsPrint textonly
DetailPrint "正在安装必须的程序组件..."
SetDetailsPrint none
SetAutoClose true
SetOutPath $INSTDIR
File "产品.exe"
SectionEnd
/* ----------------------------------------------------------------------*/
^_^,升级程序完成了,简单吧。多一些人来加入NSIS吧,哈哈!
相关文章推荐
- [NSIS] 用NSIS做一个软件升级安装包--加强版
- nsSkinEngine_美化_安装包_NSIS_DirectUI_界面库_插件_防解包_自动升级_Duilib_C++_软件开发
- NSIS:制作软件升级安装包
- 使用 NSIS 制作软件安装包
- 已证实Au_.exe是NSIS安装包的一个组成部分与说明
- 写一个批量删除软件安装包的shell
- NSIS安装包制做软件的常用小技巧
- NSIS:应用软件自动升级功能的探索与实践
- 在Android 下写一个检测软件版本号 以自动升级APP 的插件
- Fedora 20 软件升级遇到的一个小问题
- 一个值得一用的杀毒软件--nod32 (并附杀毒软件升级服务器)
- 共享WinCE6.0 下的一个软件升级程序
- NSIS制作软件安装包
- Fedora 20 软件升级遇到的一个小问题
- InstallShield制作软件安装包:在安装过程中启动一个c#写的程序
- 自己以前用C#写的简单升级程序源码(比如更新一个安装包或者压缩文件),带进度条,支持续传
- 基于OkHttpUtils自己实现一个检查升级软件功能
- NSIS 安装包确保只能有一个安装实例运行
- 命令行卸载软件解决vs2008安装包一个讨厌的feature
- 版权声明:本文为博主原创文章,未经博主允许不得转载。 今天重写一个delphi7的CS架构的软件,原本自带的控件是Indy9。现在升级到Indy10,用delphi XE5开发。发现idTcpSer