2017-08-08 89 views
1

我正在64位Windows 7系统上运行安装程序。脚本(我已经“继承”并维护这些天的一个)[Setup]部分不包含ArchitecturesInstallIn64BitMode指令。Inno设置忽略注册表重定向?

docs

  • [注册表]写入到默认的32位图。
  • Uninstall键是在注册表的32位视图中创建的。

这是我[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下,我会期待。这里是我的注册表视图(有一些光编辑):

enter image description here

和:这里

enter image description here

我的问题似乎是每隔一个我#2发现的情况相反,其中一个人抱怨“丢失钥匙”,实际上在Wow6432Node之下。

回答

4

WOW64注册表重定向主要适用于HKLM和HKCR下的密钥。只有HKCU \ Software \ Classes下的COM相关键被重定向/反射。有关详细信息,请参阅MSDN:Registry Keys Affected by WOW64