アプリケーションとサービスをインストールするための Wix インストーラーとブートストラップ アプリケーションがあります。前提条件として、.NET 2.0 SP2 Framework がインストールされている必要があり、次のコードニペットを使用してそれを検出しようとしました。
<Chain>
<PackageGroupRef Id='Netfx2Package' />
<MsiPackage SourceFile="..\Wix.CHL7.Dispatcher.Service.AZHF\bin\Debug\Wix.CHL7.Dispatcher.Service.AZHF.msi" Id="Wix.CHL7.Dispatcher.Service.AZHF_PackageId" Cache="yes" Visible="no">
<MsiProperty Name="INSTALLDIR" Value="[INSTALLPATH]" />
<MsiProperty Name="WixAppFolder" Value="[INSTALLSCOPE]"/>
</MsiPackage>
</Chain>
</Bundle>
<Fragment>
<WixVariable Id="WixMbaPrereqPackageId" Value="Netfx2Package" />
<WixVariable Id="WixMbaPrereqLicenseUrl" Value="NetfxLicense.rtf" />
<PackageGroup Id="Netfx2Package">
<ExePackage Id="Netfx2Exe"
Cache="no"
Compressed="no"
PerMachine="yes"
Permanent="yes"
Vital="yes"
SourceFile="C:\Installation\Wix.CHL7.Dispatcher.Service.Bootstrapper\lib\NetFx20SP2_x86.exe"
DownloadUrl="http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe"
DetectCondition="NETFRAMEWORK20"
InstallCondition="FALSE"/>
</PackageGroup>
</Fragment>
.NET 2.0 SP2 がインストールされている (レジストリで確認した) マシンでインストーラーを実行すると、インストーラーはフレームワークをダウンロードしてインストールしようとします。
DetectCondition が正しくないと思いますが、問題の正しい解決策が見つからないようです。では、ブートストラップに .NET 2.0 SP2 がインストールされているかどうかを検出するにはどうすればよいでしょうか?
前もって感謝します!
W