nsis - 将 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
变量,但在运行时定义将不起作用。HKLM
HKCU
!define location HKCU
解决方案
SHCTX
为此目的而存在。它由 控制SetShellVarContext
。默认为用户 ( HKCU
),设置为All
for HKLM
。
推荐阅读
- c++ - Assembly x86 convert to ARM function call with varying number of parameters to Arm
- excel - 使用单元格内容打开文件
- javascript - 检查javascript和警报中的背景颜色
- android - 我怎样才能在 Corona 中做到这一点?
- asterisk - 如果在 asterisk CLI 上执行 reload 命令,则 Asterisk 呼叫断开
- pdf - Coldfusion 不在 PDF 中显示已安装的字体
- c# - 在 .NET C# 中将动态对象转换为具体对象
- javascript - ActionFunction 没有调用 oncomplete 方法
- swift - 应用程序已卸载,但数据库仍可用于 Mac OS X 设备
- android - 如何使用 fmod 上的 dsp 效果快速保存文件?