我正在尝试禁用 WiX 中的注册表反射。
因为我想写在 Key="Software\\[Manufacturer]\\[ProductName]"
中,无论平台如何。当我在 x64 平台上安装应用程序时,安装程序替换 key "Software\Wow6432Node\\[Manufacturer]\\[ProductName]"
当我设置 DisableRegistryReflection="yes"
属性时,安装程序仍会写入“Software\Wow6432Node\\[Manufacturer]\\[ProductName]”
。
<Component DisableRegistryReflection="yes" Id="SampleID">
<RegistryKey Root="HKLM" Key="Software\[Manufacturer]\[Product Name]" Action="createAndRemoveOnUninstall">
<RegistryValue Type="string" Value="[UpdaterLocation]" Name="RootFolder"/>
</RegistryKey>
</Component>
最佳答案
要写入注册表的该部分,您必须将组件标记为 64 位 Win64="yes"
关于installation - WiX DisableRegistryReflection ="yes"属性不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8134966/