从NSIS文件,我们有
root_key subkey key_name
这个属性告诉安装程序在注册表中检查字符串,如果该字符串是有效的使用它的安装目录。 如果这个属性存在,它将覆盖INSTALLDIR属性,如果该注册表项是有效的,否则会回落到INSTALLDIR默认。
所以,如果我有一个这些行.nsi
文件:
InstallDir "D:\myFolder\myFile"
InstallDirRegKey HKCU "Software\${PRODUCT_COMPANY}\${PRODUCT_NAME}" "Install_Dir"
我明白,我把我的安装目录为D:\myFolder\myFile
为默认目录,但如果Software\${PRODUCT_COMPANY}\${PRODUCT_NAME}
是一个有效的路径,然后我会用它来代替。 那是对的吗?
从另一个岗位 ,我的理解是InstallDirRegKey
指令用于在同一位置覆盖以前的安装。 它是如何工作的更精确? 如果我有以下,
InstallDir "D:\myFolder\myFile"
InstallDirRegKey HKCU "D:\myFolder\myFile" "Install_Dir"
将一个新.exe
由NSIS脚本生成的文件覆盖原来的? 还是意味着该可执行文件将覆盖前一个?