本文主要是介绍NSIS访问X64注册表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
NSIS生成的安装程序是32位程序,在64位系统上访问注册表会重定向到wow6432node.
使用 SetRegView 64 将允许安装程序在 x64 中访问注册表键值。
它将影响 DeleteRegKey
, DeleteRegValue
, EnumRegKey
, EnumRegValue
, ReadRegDWORD
, ReadRegStr
, WriteRegBin
, WriteRegDWORD
, WriteRegStr
和 WriteRegExpandStr
。
它不会影响 InstallDirRegKey
。另外,在函数 .onInit 中也可使用 ReadRegStr 读取注册表。
SetRegView 32
ReadRegStr $0 HKLM Software\Microsoft\Windows\CurrentVersion ProgramFilesDir
DetailPrint $0 # prints C:\Program Files (x86)
SetRegView 64
ReadRegStr $0 HKLM Software\Microsoft\Windows\CurrentVersion ProgramFilesDir
DetailPrint $0 # prints C:\Program Files
Function .onInitSetRegView 64ReadRegStr $INSTDIR HKLM Software\NSIS ""SetRegView 32
FunctionEnd
这篇关于NSIS访问X64注册表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!