Build NSIS播放InstalldirRegKey
根据NSIS文件,我们有Build NSIS播放InstalldirRegKey,build,installation,nsis,instructions,Build,Installation,Nsis,Instructions,根据NSIS文件,我们有 root\u key subkey\u name此属性告诉安装程序 检查注册表中的字符串,并将其用于install dir(如果有) 字符串是有效的。如果此属性存在,它将覆盖 如果注册表项有效,则为InstallDir属性,否则将 返回到InstallDir默认设置 因此,如果我在.nsi文件中有这些行: InstallDir "D:\myFolder\myFile" InstallDirRegKey HKCU "Software\${PRODUCT_COMPANY}
root\u key subkey\u name
此属性告诉安装程序
检查注册表中的字符串,并将其用于install dir(如果有)
字符串是有效的。如果此属性存在,它将覆盖
如果注册表项有效,则为InstallDir属性,否则将
返回到InstallDir默认设置
因此,如果我在.nsi
文件中有这些行:
InstallDir "D:\myFolder\myFile"
InstallDirRegKey HKCU "Software\${PRODUCT_COMPANY}\${PRODUCT_NAME}" "Install_Dir"
我知道我将安装目录设置为默认目录D:\myFolder\myFile
,但是如果Software\${PRODUCT\u COMPANY}\${PRODUCT\u NAME}
是有效路径,那么我将使用它。对吗
另一方面,我了解到,InstallDirRegKey
指令用于覆盖以前在同一位置的安装。它是如何更精确地工作的?如果我有以下几点
InstallDir "D:\myFolder\myFile"
InstallDirRegKey HKCU "D:\myFolder\myFile" "Install_Dir"
NSIS脚本生成的新
.exe
文件是否会覆盖上一个文件?或者这是否意味着可执行文件将覆盖上一个文件?InstallDirRegKey只从注册表读取,从不写入
在执行.onInit
之前,NSIS执行以下操作:
InstallDir
,则该路径将复制到$Instdir
InstallDirRegKey
且注册表项存在,则注册表中的路径(删除文件名)将复制到$Instdir
HKLKM\Software\My Company\My App
其要点是,当用户重新安装或安装应用程序的新版本时,它将安装在同一文件夹中(覆盖/升级现有安装) InstallDirRegKey只从注册表读取数据,从不写入数据 在执行
.onInit
之前,NSIS执行以下操作:
InstallDir
,则该路径将复制到$Instdir
InstallDirRegKey
且注册表项存在,则注册表中的路径(删除文件名)将复制到$Instdir
HKLKM\Software\My Company\My App
其要点是,当用户重新安装或安装应用程序的新版本时,它将安装在同一文件夹中(覆盖/升级现有安装)