HKCU\Software\Classes\Wow6432Node (msi はターゲット x86 であり、Win7 x64 マシンでテストしています) の下に、インストーラーが登録エントリを書き込むことができるかどうかをテストするための非常に単純なインストーラーがあります。
問題は、Wow6432Node の下に何も書きたくないということです。コードは次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="f671ee4d-dd0a-4f7f-a4d1-1d181d2f3002" Name="TestWow" Language="1033" Version="1.0.0.0" Manufacturer="X" UpgradeCode="5d030587-0b6f-4a55-b090-c97a4fd22d13">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perUser" InstallPrivileges="limited"/>
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="XWix" Level="1">
<ComponentRef Id="TestWow" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir" />
</Fragment>
<Fragment>
<DirectoryRef Id="TARGETDIR">
<Component Id="TestWow" Guid="f671ee4d-dd0a-4f7f-a4d1-1d181d2f3002">
**<RegistryKey Root="HKCU" Key="Software\Classes\TestWow">
<RegistryValue Name="Test" Value="Wow" Type="string" KeyPath="yes"/>
</RegistryKey>**
</Component>
</DirectoryRef>
</Fragment>
</Wix>
次のようなレジストリ部分を変更しようとしました:
<RegistryKey Root="HKCU" Key="Software\Classes\Wow6432Node\TestWow">
<RegistryValue Name="Test" Value="Wow" Type="string" KeyPath="yes"/>
</RegistryKey>
それでもうまくいきません。
あなたの助けは大歓迎です!