どこで何かをしようとしているのかがはっきりしないので、最初から始めます。
新しいWixバーンブートストラッパープロジェクトを作成します。これは、依存関係がインストールされ、既存のWix3.5インストーラーが生成される場所です。
.net 3.5 SP1フルパッケージをダウンロードし、ダウンロードに使用された直接URLをメモします。
(wix 3.6 bin dirで)heat.exeを使用して、次のコマンドを実行します。これにより、.netインストーラーの詳細を含むWXSファイルが生成されます。
heat.exe payload [path_to_net_installer] -o [path_to_wxs]
this.willはwxsであなたをフォローします:
<RemotePayload CertificatePublicKey="F321408E7C51F8544B98E517D76A8334052E26E8"
CertificateThumbprint="D57FAC60F1A8D34877AEB350E83F46F6EFC9E5F1"
Description=".NET Framework 3.5 Setup"
Hash="3DCE66BAE0DD71284AC7A971BAED07030A186918"
ProductName=".NET Framework 3.5"
Size="242743296"
Version="3.5.30729.1" />
これを要素の子としてブートストラッパープロジェクトに追加し、ExePackage
前に保存したダウンロードURLで要素を更新します。これにより、.netインストーラーが自動的にダウンロードされるか、bootstrapperexeの横に配置して検出されます。
インストーラー用の.netExePackageとMsiPackageを含むチェーンをバンドルに作成します。次に、次のような結果になります(必要な属性の多くは、入力する必要があります!):
<Bundle Name="$(var.SkuName)"
Copyright="$(var.Copyright)"
Manufacturer="$(var.Manufacturer)"
Version="$(var.ProductVersion)"
UpgradeCode="$(var.UpgradeCode)">
<Chain>
<ExePackage Id="dotNetFX3.5">
<RemotePayload />
</ExePackage>
<MsiPackage Id="MyMsi" />
</Chain>
</Bundle>
ビルドすると、msiが含まれている大きなexeが作成されます。圧縮しない場合は、msiを実行するexeが実行されます(同じフォルダーにある必要があります)。