Windows 2010 用のアドインを展開する WiX インストーラーを作成しました。現在、ターゲット システムには x64 Win & Office がインストールされています。x64インストーラーとランタイムよりも必要であると言っているいくつかのマイクロソフトサイトを歩き回りました(アドインが現在の単語の実行プロセスにロードされるため)。このインストーラーは、次のステートメントを使用して VSTO ランタイムの存在を確認します。
<?if $(var.Platform)=x64 ?>
<?define win64Flag = "yes"?>
<?else ?>
<?define win64Flag = "no"?>
<?endif ?>
<Property Id="VSTORUNTIMEREDIST">
<RegistrySearch Id="VSTORuntimeRedist" Root="HKLM" Key="SOFTWARE\Microsoft\vsto runtime setup\v4R\VSTORFeature_CLR40" Name="Version" Type="raw" Win64="$(var.win64Flag)"/>
</Property>
<Property Id="OFFICERUNTIME">
<RegistrySearch Id="OfficeRuntime" Root="HKLM" Key="SOFTWARE\Microsoft\VSTO Runtime Setup\v4" Name="Version" Type="raw" Win64="$(var.win64Flag)"/>
</Property>
<Condition Message="The Visual Studio 2010 Tools for Office Runtime is not installed. Please install the Office Runtime.">
<![CDATA[Installed OR VSTORUNTIMEREDIST>="10.0.30319" OR OFFICERUNTIME>="10.0.21022"]]>
</Condition>
実際には、インストーラーの x86 バージョンで動作していますが、x64 モードでビルドすると、いつでも (ランタイムがインストールされていても) レジストリで x64 エントリを見つけることができません。既にランタイムをアンインストールして再インストールしようとしましたが (実際に再起動して)、うまくいきません。
アドインをインストールするためのチェックも外しましたが、実際にはロードされません。
したがって、私の質問は、既知のバグの問題があるかどうか、または間違ったレジストリ キーを使用したかどうかです。