NSIS和HKLM,使用字符串

NBc*_*ode 0 installer windows-installer nsis

我使用向导创建了一个NSIS安装程序,然后查看了代码:它将名为PRODUCT_UNINST_ROOT_KEY的变量定义为"HKLM":

!define PRODUCT_UNINST_ROOT_KEY "HKLM"
Run Code Online (Sandbox Code Playgroud)

然后像这样使用它:

WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
Run Code Online (Sandbox Code Playgroud)

我想知道$ {PRODUCT_UNINST_ROOT_KEY}是否为:HKLM,或"HKLM",如果文件夹的名称不同,它仍然引用该目录(我的名字叫做"HKEY_LOCAL_MACHINE").

谢谢!

And*_*ers 5

HKLM HKEY_LOCAL_MACHINE(这是一个很常见的别名),HKCU是HKEY_CURRENT_USER等.

!define PRODUCT_UNINST_ROOT_KEY "HKLM"是相同的,!define PRODUCT_UNINST_ROOT_KEY HKLM 但如果字符串包含空格,您实际上只需要引号.