インターネットに接続されていない環境で動作する必要があるセットアップ バンドルを構築しているため、.NET 4.0 フレームワーク インストーラーとそれに対応する eula をバンドルに含めています。からソースをコピーしましたwix37-sources\src\ext\NetFxExtension\wixlib\NetFx4.wxs
が、パッケージがリモート ペイロードではなく圧縮されるようにいくつかの変更を加えました。
ただし、eula リンクがバンドルからペイロードをロードする方法を理解できませんでした。私はいつも得る:
[0930:0BDC][2013-08-22T16:02:37]e000: Error 0x80070002: Failed to launch URL to EULA.
ウィックスのソースは次のとおりです。
<!-- Referencing the NetFx40Full package will cause these WixVariables to be defined -->
<!-- which indicates to the bootstrapper engine what the MBA dependency is -->
<WixVariable Id="WixMbaPrereqPackageId" Value="NetFx40Full"/>
<WixVariable Id="WixMbaPrereqLicenseUrl" Value="NetFX_4_all_FINAL_RTM.rtf"/>
<PackageGroup Id="NetFx40Full">
<ExePackage
Id="NetFx40Full"
InstallCommand="/q /norestart /ChainingPackage "[WixBundleName]""
RepairCommand="/q /norestart /repair /ChainingPackage "[WixBundleName]""
UninstallCommand="/uninstall /q /norestart /ChainingPackage "[WixBundleName]""
PerMachine="yes"
DetectCondition="NETFRAMEWORK40"
Vital="yes"
Permanent="yes"
Protocol="netfx4"
SourceFile="$(var.SourceRoot)\Deployment\Packages\.NET Framework 4.0\dotNetFx40_Full_x86_x64.exe"
Compressed="yes">
<Payload SourceFile="$(var.SourceRoot)\Deployment\Packages\.NET Framework 4.0\NetFX_4_all_FINAL_RTM.rtf"
Compressed="yes"/>
</ExePackage>
</PackageGroup>
これは実際に可能ですか?