参考自:https://blog.csdn.net/flighty/article/details/6094485
1.在“MUI现代界面定义结束”后面读取注册表中关于安装路径的键值,如果没有,就使用默认路径。
注:其中,程序名称即为你的PRODUCT_NAME的值,不需要后缀名
NSIS 代码
;读取注册表中关于安装路径的键值,如果没有,就使用默认路径
InstallDirRegKey HKCU "Software\你的程序名称" ""
2.在主区段中把安装路径写入注册表。
NSIS 代码
;把安装路径写入注册表,以便下次更新时,直接使用同样的安装路径
WriteRegStr HKCU "Software\你的程序名称" "" $INSTDIR
3.在卸载区段(Uninstall)删除注册表中安装路径的键值,(如果希望卸载后还保留之前的安装路径,下面这段代码可以不需要)。
NSIS 代码
;卸载区段删除注册表中安装路径的键值
DeleteRegKey /ifempty HKCU "Software\你的程序名称"
这样便实现了在更新程序时,使用之前的安装路径。