Installation WiX DisableRegistryReflection=";是”;属性不起作用
我正在尝试禁用WiX中的注册表反射。 因为我想在Installation WiX DisableRegistryReflection=";是”;属性不起作用,installation,wix,x86,64-bit,Installation,Wix,X86,64 Bit,我正在尝试禁用WiX中的注册表反射。 因为我想在Key=“Software\\[Manufacturer]\\[ProductName]”中编写,而不考虑平台。当我在x64平台上安装我的应用程序时,安装程序将替换密钥“Software\Wow6432Node\\[Manufacturer]\\[ProductName]” 当我设置DisableRegistryReflection=“yes”属性时,安装程序仍然会写入“Software\Wow6432Node\\[Manufacturer]\\\
Key=“Software\\[Manufacturer]\\[ProductName]”
中编写,而不考虑平台。当我在x64平台上安装我的应用程序时,安装程序将替换密钥“Software\Wow6432Node\\[Manufacturer]\\[ProductName]”
当我设置DisableRegistryReflection=“yes”
属性时,安装程序仍然会写入“Software\Wow6432Node\\[Manufacturer]\\\[ProductName]”
要写入注册表的该部分,必须将组件标记为64位Win64=“yes”这是不可能的,因为我显然有32位组件。如果要写入注册表的64位部分,这显然不是32位组件。但是,由于MSI不支持注册表重定向,因此必须使用自定义操作来写入条目。请参见此链接了解如何执行此操作:
<Component DisableRegistryReflection="yes" Id="SampleID">
<RegistryKey Root="HKLM" Key="Software\[Manufacturer]\[Product Name]" Action="createAndRemoveOnUninstall">
<RegistryValue Type="string" Value="[UpdaterLocation]" Name="RootFolder"/>
</RegistryKey>
</Component>