NSIS制作安装包,如何检测并卸载已有版本

NSIS运行的一些检查项目 目录说明Script配置软件是否安装软件版本判断软件运行判断安装/升级程序运行判断 说明 安装软件或者升级软件的时候要做一下常规的检查,一般包括以下几项: 软件是否已经安装 软件版本是否正确(升级) 软件是否正在运行 安装/升级程序是否正常运行 Script 配置 !define PRODUCT_NAME "Test" !define PRODUCT_VERSION "2.4.1" !defi... 阅读详情

将如下代码追加到NSIS脚本的尾部即可。


Var UNINSTALL_PROG
Var OLD_VER
Var OLD_PATH


Function .onInit
  ClearErrors
  ReadRegStr $UNINSTALL_PROG ${PRODUCT_UNINST_ROOT_KEY} ${PRODUCT_UNINST_KEY} "UninstallString"
  IfErrors  done
  
  ReadRegStr $OLD_VER ${PRODUCT_UNINST_ROOT_KEY} ${PRODUCT_UNINST_KEY} "DisplayVersion"
  MessageBox MB_YESNOCANCEL|MB_ICONQUESTION \
    "检测到本机已经安装了 ${PRODUCT_NAME} $OLD_VER。\
    $\n$\n是否先卸载已安装的版本?" \
      /SD IDYES \
      IDYES uninstall \
      IDNO done
  Abort
  
uninstall:
  StrCpy $OLD_PATH $UNINSTALL_PROG -10


  ExecWait '"$UNINSTALL_PROG" /S _?=$OLD_PATH' $0
  DetailPrint "uninst.exe returned $0"
  Delete "$UNINSTALL_PROG"
  RMDir $OLD_PATH


done:
FunctionEnd




Nsis安装或卸载程序时判断指定程序是否在运行 版本1.6。 阅读详情

相关推荐

NSIS + QT 做安装卸载程序

NSIS + QT 做安装卸载程序。 NSIS仅仅用于把所有的东西封装为一个EXE。 NSIS打包 QT做有逼格的可视化界面,并且方便实现。 以下是nSIS源码: icon ".\xxx.ico" #设置图标 OutFile "setup.exe" #设置生成程序 SilentInstall silent #静默安装不出现任何NSIS自带界面 F

mqdChalali的博客 6784

NSIS实现安装前检测是否安装程序,程序是否运行,安装后关联程序默认打开方式,刷新文件图标

NSIS实现安装前检测是否安装程序,程序是否运行,安装后关联程序默认打开方式,刷新文件图标这段时间在公司研究C#程序的安装包尝试了vs自带的setup项目,效果不尽如意跟直接压缩没太大区别。老大让我试试用nullsoft做着试试..在这期间踩了好多好多坑...主要是网上找到的nullsoft教程都不太适合初学者。整理发布下我拼凑的这篇脚本。本人研究有限,仅为了项目开发而研究。高手勿喷。 这段时间在...

cheeeeeeen的博客 3592

Windows安装包制作工具-NSIS使用教程

NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System)的缩写,它是是一个专业开源的制作 windows 安装程序的工具,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。

mickey2007的博客 6526

NSIS检测已安装并卸载旧版本和静默安装.msu文件

NSIS检测已安装并卸载旧版本(64位): Function .onInit    !insertmacro TIP_WHEN_AMD64_INSTALLER_RUNAT_X86    ;安装到所有用户下,current 表示安装到当前用户下, all 表示所有用户下。    SetShellVarContext all       ClearErrors    SetRegVie

日晞Pisces的专栏 6488

NSIS脚本学习:如何检测并卸载已有软件版本

前言 目前开发的程序以基于.net的应用程序为主,程序开发好后,需要进行安装包的生成,及setup文件的生成。 常见的是NSIS工具,之前一直用的单文件打包工具,不适合将运行环境加进去,因此开始使用更高版本的NSIS 3.06。 这里要解决的是安装包生成后,原有电脑已有旧版本的软件,这里需要检测判断是否需要卸载旧版本的软件,便于更新。 检测并自定义卸载 在NSIS脚本的最后面,附加以下代码即可解决该问题 Var UNINSTALL_PROG Var OLD_VER Var OLD_PATH Functio

LeonSUST的博客 4760

Qt制作安装包程序

简述 近期使用Qt开发了一款类似于NSIS的安装包制作程序,做过安装包制作的朋友们,大部分应该熟悉NSIS,是一款很流行的开源安装程序制作工具,虽然说是比较流行,但是相对来说想做一些好看的界面以及实现一些特殊功能,学习成本以及难度还是不少的,且NSIS不支持跨平台。类似的还有Qt的IFW安装程序,IFW做一个灰常简单的安装包,教程多得是,但是想要实现一些自定义功能,却需要编写qs脚本,对于没写过js脚本的操作起来难度较高,没有好的IDE,除了自带的Dome,全网资源较少。 下面介绍一下Qt编写的安装包制作,

LuXiaoXin1999的博客 4735

NSIS制作软件安装包

NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序。它提供了安装、卸载、系统设置、文件解压缩等功能。这如其名字所指出的那样,NSIS 是通过它的脚本语言来描述安装程序的行为和逻辑的。NSIS 的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。http://nsis.sourceforge...

m1223853767的博客 7708

windows上利用NSIS制作安装向导程序及常见问题

NSIS 的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。如果指定了 /r ,则目录会被递归删除,所以在指定目录下的所有文件和目录均被删除。如果指定了 /REBOOTOK ,任何当前不能删除的文件或目录将会在重启后被删除 – 如果文件或目录需要在重启时被删除,会放置一个重启的标记。授权文件就是我们的licence.txt文件,这个文件的编码ASCII编码,就是记事本新建的默认文本格式,这个文件的的路径必须是存在的,否则后面的时候不能生成安装程序。先把默认的模版文件删掉。

cai901022的博客 5597

NSIS检测并卸载已有版本,静默卸载隐藏MessageBox

接触到NSIS制作安装包,检测并卸载已有版本,项目要把已有项目删除,百度了方法,遇到了不少坑,慢慢的,现在的版本应该可以使用了。希望可以帮到一些人。 废物不多说,先看下原本百度的代码: Var UNINSTALL_PROG Var OLD_VER Var OLD_PATH Function .onInit ClearErrors ReadRegStr $UNINSTALL_PR

Android丶Ren 7315

NSIS安装包制作全指南:从环境配置到脚本实战

安装包制作是Windows软件交付的关键环节,NSIS作为一款开源免费且体积小巧的脚本化安装工具,凭借其灵活的定制能力在众多方案中脱颖而出。与Inno Setup和InstallShield相比,NSIS通过显式的脚本命令控制文件复制、注册表写入和快捷方式创建,开发者可借助VNISEdit可视化向导快速生成脚本,再通过编写Section、Function和变量实现深度定制。其核心优势在于支持Unicode、静默安装及从Windows XP到11的广泛兼容性,适用于企业批量部署和轻量级工具分发。掌握NSIS不

weixin_32927133的博客 281

NSIS安装包制作工具实战指南

NSIS(Nullsoft Scriptable Install System)是一款开源、轻量且功能强大的安装包制作工具,广泛应用于Windows平台软件的打包与分发。其核心优势在于通过脚本驱动的方式实现高度可定制化的安装流程,支持从简单的文件复制到复杂的系统配置、注册表操作、服务安装等任务。相比商业安装工具如InstallShield或Inno Setup,NSIS具有免费、灵活、体积小、执行效率高等特点,尤其适合中小型项目或需要深度控制安装行为的开发团队。

weixin_33375360的博客 1180

使用NSIS制作安装包,并把libreoffice打进安装包一起安装

打开 Nis Edit安装包制作工具,新建一个向导脚本,建议使用向导来协助制作。全部添加完如下点击完成生成脚本,把脚本保存到nis文件夹下。保存完脚本之后,会在Nsis Edit中自动打开保存的脚本,点击编译开始编译脚本,编译完会在配置的文件夹下生成安装包,双击安装包,就可以进入安装过程了。脚本如下(里面有我的测试程序,打包的时候换成自己的项目就行),libreoffice安装采用静默安装,在安装之前会先检查路径下是否存在libreoffice,如果存在不再安装libreoffice。

qq_23339499的博客 646

掌握NSIS:打造专业的Windows安装包

NSIS,全称Nullsoft Scriptable Install System,是一个功能强大的安装制作系统,被广泛用于Windows平台的应用程序部署。它通过脚本语言进行定制化的安装包创建,让用户能够根据自己的需求,设计出专业且用户友好的安装界面。NSIS支持各种安装脚本操作,包括安装路径的自定义、图形界面的定制、多语言安装包的制作、文件和注册表操作,以及权限管理等高级功能。NSIS通过其简洁直观的脚本语言,让即使是编程新手也能够快速上手,创建出基本的安装程序。

weixin_42160645的博客 962

NISEdit 制作安装包

使用 NIS Edit 向导模式新建脚本时,需要依赖改编译器。NIS Edit 会自动加载该编译器。下载地址:https://nsis.sourceforge.io/Download下载并安装 NSIS 编译器。

cliffordl的专栏 2647

NSIS轻量级安装包制作工具实战指南

对于数据库配置、服务端口设置这类需求,可以用加载 INI 文件定义的对话框:[Field 1]Type=LabelText="服务器地址:"Left=15Right=60Top=10Bottom=25[Field 2]Type=InputLeft=65Right=130Top=8Bottom=27NSIS 脚本加载:Pop $0完全可视化,交互体验不输专业安装工具!

weixin_33298352的博客 958

SRAM Bank数量配置:性能、面积与功耗的权衡指南

SRAM(静态随机存取存储器)是芯片设计中的关键存储单元,其Bank数量配置直接影响访问延迟、吞吐率、功耗和面积。Bank切分通过将存储阵列分区,缩短位线和字线延迟,从而提升性能,但会增加外围电路开销。合理配置Bank数量可优化PPA(性能、功耗、面积),在28nm和16nm工艺下,2个Bank通常是性价比最高的选择。本文基于实测数据,探讨不同场景下的Bank配置策略,帮助工程师避免常见误区,提升设计效率。

weixin_27230891的博客 179

NSIS制作安装软件过程

主要记录使用NSIS制作安装软件的过程,包括 1) 完全自定义页面 2) 修改已有页面 3) 控件的动态显示 4) 页面的跳转方式 5) 按键贴皮的制作方法 6) ...

平面到立体 1923

飞牛 NAS 部署 Hermes Agent 全指南:打造 24 小时在线、自我进化的 AI 智能体!

当大多数人还在把 AI 当聊天机器人使用时,我已经把它部署到了家里的飞牛 NAS 上,让它 24 小时在线工作、记忆我的习惯、自动执行任务,甚至还能不断学习新的技能。今天带你从零搭建这个真正属于自己的 AI Agent。🚀

XiaoqiangClub的博客 1232

使用 NSIS 制作软件安装包

NSIS软件封装

... 8775

改进YOLOv9的CT图像肺结节检测与分类算法:从原理到实战

本文将详细介绍如何改进YOLOv9算法,使其更好地适应CT图像肺结节检测与分类任务。我们将从数据集准备、模型改进、训练优化到最终部署,完整呈现一个端到端的深度学习项目,并提供完整的代码实现。

YOLO 188

基于机器学习的电视剧类型点击量数据分析研究

1. 背景介绍 1.1 流媒体平台的兴起与电视剧市场的繁荣 近年来,随着互联网技术的飞速发展,流媒体平台如Netflix、Disney+、腾讯视频等迅速崛起,成为人们观看影视内容的主要渠道。电视剧作为流媒体平台上的重要内容类型,其点击量数据蕴含着丰富的用户偏好和市场趋势信息。

AI天才研究院 1051

NSIS 自定义界面,下载并安装Net.Framework4.8

如果我们的软件开发的语言使用的是C#,使用的平台框架是Net.Framework,哪么在部署软件安装时,就需要考虑在安装过程检测是否需要安装net环境,并进行安装。 本文以ScreenToGif 这款软件为例,详细讲解如何在安装的过程中检测并下载net包进行安装。 前言 1、ScreenToGif 是一款开源的截屏软件,依赖于Net.Framework环境 2、本文讲解的NSIS安装过程为自定义界面,而非传统界面(需要传统界面的留言区留言)。 3、Win10系统好像是自动集成了Net.Fr..

3930

【系列05】端侧AI:构建与部署高效的本地化AI模型 第4章:模型量化(Quantization)

量化的基本思想是减少模型中用于表示参数和激活值的比特数。在模型训练时,参数通常使用32位浮点数(FP32)进行存储,这提供了高精度,但也消耗大量的内存和计算资源。量化则将这些32位浮点数转换成低比特数表示,通常是8位整数(INT8)。量化的原理可以概括为:对浮点数范围进行校准,并将其映射到更小的整数范围内。例如,将一个FP32的权重(如-1.5到1.5)映射到INT8的范围(-128到127)。在推理过程中,模型将使用这些低精度的整数进行计算,从而大大减少了所需的计算量。量化带来的主要收益减少模型大小。

学习,输出==》再学习再输出 1217
上一篇: 旅行者1号发射时间与计算机发展史上的几个时间点
下一篇: 360极速浏览器之所以极速的另一可能原因——窗口
无忧老猪
博客等级 码龄18年 200粉丝 112原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值