NSIS:禁止多次安装实例

原文 NSIS:禁止多次安装实例

为了防止用户重复安装软件,我们可以加入以下的判断来进行限制。

第一步:在安装脚本中,将是否已安装的标记Installed写入注册表中:
 

1 Section -Post
2   WriteRegDword HKLM "${PRODUCT_DIR_REGKEY}" "Installed" 1
3 SectionEnd

第二步:在.onInit 读取安装程序在安装过程中写入的注册表键值:
 

1 Function .onInit
2  ;禁止多次安装实例 start
3   ReadRegDWORD $0 HKLM '${PRODUCT_DIR_REGKEY}' "Installed"
4   IntCmp $0 +1 +4
5    MessageBox MB_OK|MB_USERICON '$(^Name) 已安装在计算机中。如需重新安装,请卸载已有的安装。'
6   Quit
7   nop
8  ;禁止多次安装实例 end
9 FunctionEnd
时间: 2024-09-21 17:57:41

NSIS:禁止多次安装实例的相关文章

补丁程序提示有一个挂起的安装实例,请重起机器

在安装SQL Server 2000或SP3补丁的时候,安装程序提示有一个挂起的安装实例,要求重起机器. 例如:"以前的某个程序安装已在安装计算机上创建挂起的文件操作. 运行安装程序之前必须重新启动计算机." 但实际情况是:重起多次操作系统都不起作用,把操作系统的Temp临时目录都清除,也不起作用. 此问题的解决方法如下:运行regedit打开注册表编辑器,HKEY_LOCAL_MACHINESYSTEMControlSet001ControlSession Manager中找到Pen

“系统管理员设置了系统策略,禁止进行此项安装”三种解决办法

安装office2003的时候出现以下故障:("系统管理员设置了系统策略,禁止进行此项安装") 总结了三种解决办法跟大家共享: 解决办法一: 开始,运行regedit,打开注册表,找到HKEY_CLASSES_ROOTInstallerProducts 4080110900063D11C8EF10054038389C这个注册表项目,删除即可.如果出现多项 4080110900063D11C8EF10054038389C,删除没有子项目的那项即可. 解决办法二: windows开始菜单,

win7电脑如何禁止驱动程序自动安装?

  以前小编就曾经介绍过,电脑中很多的补丁信息,还有服务项目都是系统自动更新下载并进行安装的,这可以帮助用户节约不少的时间,也会让系统永远不会立于"不完善"的境界,不过对于一些电脑来说,下载一些不必要的程序驱动反倒是会成为电脑的负担,成为占着CPU"不拉屎"的罪魁祸首,或者说造成驱动和电脑的不兼容,导致各种的并发症,那么在win7 32位纯净版中,咱们是否有办法禁止驱动程序自动安装呢? 1.首先,咱们返回到电脑的桌面界面,然后找到桌面的计算机图标并点击右键,选择属性

IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)_php实例

录制+调整花了几个小进才把IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例弄好 有需要的朋友可以下载看看 /uploadfiles/file/iis.rar 说明: IIS6.0+PHP5.x+MySQL5.x+Zend5.0x+GD+phpMyAdmin2.8x通用安装实例 建议看附件中的视屏文件,比较直观 为了教程视屏不过于太大,在做视屏教程之前就已经写好步骤,就不用在录制过程中录入文字了 一.下载所需软件 建议软件全部去官方网站

《面向机器智能的TensorFlow实践》一2.5 源码构建及安装实例:在64位Ubuntu Linux上安装GPU版TensorFlow

2.5 源码构建及安装实例:在64位Ubuntu Linux上安装GPU版TensorFlow 如果希望使用带有GPU支持的TensorFlow,那么最可能的选择是从源码构建和安装.本节给出了一个完整的安装参考实例,详细介绍了安装和运行TensorFlow所需的每一具体步骤.请注意,本示例中的操作系统为64位Ubuntu Linux发行版,因此如果你使用的是其他Linux发行版,则可能需要对某些命令进行修改(如apt-get).如果希望在Mac OS X上从源码构建TensorFlow,笔者推荐

Mysql 5.6.24安装实例教程_Mysql

安装前准备工作: 1)编辑PATH路径 vim /etc/profile PATH=/home/mysql/bin:/home/mysql/lib:$PATH export PATH 2)生效PATH source /etc/profile 3)编辑hosts vim /etc/hosts 192.168.117.130 cc-test 安装 1.环境配置 yum install - y gcc gcc-c++ make cmake 2.准备好安装包mysql-5.6.24.tar.gz,并将它

NSIS:判断并安装.NET Framework 4 的例子

原文 NSIS:判断并安装.NET Framework 4 的例子 现在.NET开发的软件已经大行其道,但有些操作系统并不符合软件的运行要求,所以,我们需要在安装程序中进行.NET Framework的判断,如果不符合要求就进行静默安装.   首先,我们在Function区段进行当前.NET版本判断: 01 Function GetNetFrameworkVersion 02 ;获取.Net Framework版本支持 03 Push $1 04 Push $0 05 ReadRegDWORD

Windows7禁止USB自动安装驱动的方法

在Windows XP系统下,用户在限制USB设备使用方面,首先考虑的就是禁止其自动播放,以避免木马病毒入侵.但很多时候,这样的方法并不是很有效.如果你是Windows 7用户,那就可以通过它独有的"权限控制"技术,从源头上控制USB设备的自动运行. 那么,怎样才能从源头控制呢? 大家应该都知道,当USB设备插入电脑主机,稍后一会,系统将会提示XX设备已经可以使用,这个过程其实就是系统识别,并为USB设备安装驱动的过程.我们可以利用Windows 7特有的权限控制功能,禁止它自动识别并

win7系统如何设置禁止任何软件安装

  本文介绍如何win7 64位系统下如何禁止软件安装! 禁止软件安装设置方法: 1.点击键盘上面的Win+R键,这样就可以调出ghost win7的运行对话框,接着在运行窗口里面输入gpedit.msc命令,打开本地组策略编辑器. 2.接着在本地组策略编辑器里面,逐一展开下面的选项:"计算机配置"."管理模板"."Windows组件"."Windows Installer",接着就双击打开 "禁用Windows I