请帮帮我:我想把一些数据写入注册表。你可能会说“等等,等等,这是NSIS的基本功能之一!”,但是,我想写信给 app 注册表(HKCU,而不是HKLM)。主要目的是:当安装程序安装我的产品时,它还会安装我的更新管理器。我只想将产品安装目录写入Updater分支,因此它可以进一步获取更新包并将其安装到产品目录中。
答案 0 :(得分:2)
如果您的脚本中有RequestExecutionLevel admin
而您正在安装到$ProgramFiles
,那么您正在安装一台机器/所有用户,安装程序不应写入HKCU。您的应用程序必须在用户首次运行时在HKCU和AppData中初始化其条目。您无法在安装程序中执行此操作,因为UAC可能会将安装程序作为"错误的"用户。
如果您的脚本中有RequestExecutionLevel user
,那么您正在进行单个用户安装,而安装程序只应写入HKCU和[Local] AppData。
答案 1 :(得分:0)
对不起,我已经解决了这个问题。我在ProgramData中添加了特殊目录。它包含我所有应用程序和安装信息的分支。