首页 > 解决方案 > 将 HKLM/HKCU 分配给不同类型安装的变量

问题描述

我正在编写一个脚本来关联文件关联,我想知道是否可以根据是管理员安装还是用户安装将变量分配给 HKLM 或 HKCU。我正在处理的项目在用户附加-user用户安装而不是管理员安装时在运行时确定这一点。我在想类似的东西:

Var location
${If} $InstallMode == "Admin"
    $location = HKLM ;probably not the right way to assign
${Else}
    $location = HKCU
${EndIf}

我是 NSIS 的新手,从到目前为止我所阅读和尝试的内容来看,我可以通过写入或写入来定义!define变量,但在运行时定义将不起作用。HKLMHKCU!define location HKCU

标签: nsis

解决方案


SHCTX为此目的而存在。它由 控制SetShellVarContext。默认为用户 ( HKCU),设置为Allfor HKLM


推荐阅读