我正在构建一个需要在非Internet连接环境中工作的安装包,因此我将包括.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.
这是wix来源:
<!-- 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>
这实际上可行吗?