我在64位Windows 7系统上运行设置。脚本(我已经“继承”并维护这些日子)[Setup]
部分不包含ArchitecturesInstallIn64BitMode
指令。
根据docs:
这是我的[Registry]
部分:
[Registry]
Root: HKCU; Subkey: "Software\{code:GetRegistryName}"; Flags: deletekey
Root: HKCU; Subkey: "Software\{code:GetRegistryName}"; Flags: uninsdeletekeyifempty
Root: HKCU; Subkey: "Software\{code:GetRegistryName}"; ValueType: string; ValueName: "InstallPath"; ValueData: "{app}"; Flags: uninsdeletekey
Root: HKCU; Subkey: "Software\{code:GetRegistryName}"; ValueType: string; ValueName: "CurrentVersion"; ValueData: "{code:GetVersion}"; Flags: uninsdeletekey
...但是,所有的密钥都落在了注册表的64位部分 - 也就是说,Wow6432Node
没有任何内容,正如我所期望的那样。这是我的注册表视图(有一些轻量级编辑):
和
我的问题似乎与我在Stackoverflow上找到的每一个问题相反,其中一个人抱怨“丢失密钥”,实际上是在Wow6432Node
下。
答案 0 :(得分:4)
WOW64注册表重定向主要适用于HKLM和HKCR下的密钥。仅重定向/反映HKCU \ Software \ Classes下的COM相关键。有关详细信息,请参阅MSDN:Registry Keys Affected by WOW64。