请把轻狂志网址 www.flighty.cn 加入收藏夹,其他俱为假冒,谨防被骗!赞助请点 这里!找东东请用右边的搜索 ===>
05 2013-09

NSIS:禁止多次安装实例

作者:少轻狂 | 发布:2011-01-09 | 更新:2013-09-05 | 分类:部署 | Disposition | 热度:

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

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

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


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

Function .onInit
 ;禁止多次安装实例 start
  ReadRegDWORD $0 HKLM '${PRODUCT_DIR_REGKEY}' "Installed"
  IntCmp $0 +1 +4
   MessageBox MB_OK|MB_USERICON '$(^Name) 已安装在计算机中。如需重新安装,请卸载已有的安装。'
  Quit
  nop
 ;禁止多次安装实例 end
FunctionEnd