我目前有一个场景,我需要使用 burn 执行以下操作
- 安装 Windows 映像组件
- 安装 Windows 安装程序 4.5
- 安装 .Net 4 Web
- 运行我的安装程序(使用 Wix 3.6 创建)
我想知道是否有办法在安装 MsuPackage 后强制重启...
在我的场景中,当引导程序在 Windows vista 上安装 Windows6.0-KB942288-v2-x86.msu 并随后尝试在不重新启动的情况下安装 .Net Framework 时会引发错误:0x8007064d - Windows 安装程序无法安装此安装包服务...
如果我在错误后重新启动并再次运行设置,它会正常工作。请注意,使用 ExePackage 可以指定 InstallCommand 以及 ExitCode,如何在 MsuPackage 中实现相同的行为?
请在下面查看我的 wxs 文件的内容:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Bundle Name="$(var.MyProject.ProjectName)" Version="2.6.0.0" Manufacturer="Awesome Software (Pty) Ltd" UpgradeCode="6a77118d-c132-4454-850b-935edc287945">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
<bal:WixStandardBootstrapperApplication
LicenseFile="$(var.SolutionDir)Awesome.EULA\Awesome CE Eula.rtf"
SuppressOptionsUI="yes"/>
</BootstrapperApplicationRef>
<util:FileSearch Path="[SystemFolder]\windowscodecs.dll" Variable="windowscodecs" Result="exists" />
<Chain>
<!-- Windows Imaging Component-->
<ExePackage Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes"
SourceFile="redist\wic_x86_enu.exe"
DownloadUrl="http://download.microsoft.com/download/f/f/1/ff178bb1-da91-48ed-89e5-478a99387d4f/wic_x86_enu.exe"
InstallCondition="VersionNT < v5.2 AND NOT VersionNT64"
DetectCondition="windowscodecs"
InstallCommand="/quiet /norestart">
</ExePackage>
<ExePackage Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes"
SourceFile="redist\wic_x64_enu.exe"
DownloadUrl="http://download.microsoft.com/download/6/4/5/645FED5F-A6E7-44D9-9D10-FE83348796B0/wic_x64_enu.exe"
InstallCondition="VersionNT < v5.2 AND VersionNT64"
DetectCondition="windowscodecs"
InstallCommand="/quiet /norestart">
</ExePackage>
<!-- Windows Installer 4.5 -->
<ExePackage Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes"
SourceFile="redist\WindowsXP-KB942288-v3-x86.exe"
DownloadUrl="http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/WindowsXP-KB942288-v3-x86.exe"
InstallCondition="VersionNT=v5.1 AND NOT VersionNT64 AND VersionMsi < v4.5"
InstallCommand="/quiet /norestart">
<ExitCode Behavior="forceReboot"/>
</ExePackage>
<ExePackage Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes"
SourceFile="redist\WindowsServer2003-KB942288-v4-x86.exe"
DownloadUrl="http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/WindowsServer2003-KB942288-v4-x86.exe"
InstallCondition="VersionNT=v5.2 AND NOT VersionNT64 AND VersionMsi < v4.5"
InstallCommand="/quiet /norestart">
<ExitCode Behavior="forceReboot"/>
</ExePackage>
<ExePackage Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes"
SourceFile="redist\WindowsServer2003-KB942288-v4-x64.exe"
DownloadUrl="http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/WindowsServer2003-KB942288-v4-x64.exe"
InstallCondition="VersionNT=v5.2 AND VersionNT64 AND VersionMsi < v4.5"
InstallCommand="/quiet /norestart">
<ExitCode Behavior="forceReboot"/>
</ExePackage>
<MsuPackage Cache="no" Compressed="no" Permanent="yes" Vital="yes" KB="KB942288"
SourceFile="redist\Windows6.0-KB942288-v2-x86.msu"
DownloadUrl="http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/Windows6.0-KB942288-v2-x86.msu"
InstallCondition="VersionNT=v6.0 AND NOT VersionNT64 AND VersionMsi < v4.5">
</MsuPackage>
<MsuPackage Cache="no" Compressed="no" Permanent="yes" Vital="yes" KB="KB942288"
SourceFile="redist\Windows6.0-KB942288-v2-x64.msu"
DownloadUrl="http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/Windows6.0-KB942288-v2-x64.msu"
InstallCondition="VersionNT=v6.0 AND VersionNT64 AND VersionMsi < v4.5">
</MsuPackage>
<PackageGroupRef Id="NetFx40Web"/>
<RollbackBoundary />
<MsiPackage Id="MaxCut" SourceFile=".\StagingBundle\Awesome.msi" DisplayInternalUI="no"/>
</Chain>
</Bundle>
</Wix>