Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation WiX DisableRegistryReflection=";是”;属性不起作用_Installation_Wix_X86_64 Bit - Fatal编程技术网

Installation WiX DisableRegistryReflection=";是”;属性不起作用

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]\\\

我正在尝试禁用WiX中的注册表反射。 因为我想在
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>