繁体   English   中英

WiX捆绑软件安装强制重启详细信息

[英]WiX bundle installation force reboot details

我有Windows程序安装启动程序项目。 链中有.NET Framework,Visual Studio C ++可再发行组件,设备驱动程序安装程序和我的应用程序安装程序:

<Chain>
    <PackageGroupRef Id="Netfx45Xxx"/>

    <ExePackage Id="CppRedist"
        SourceFile="..\redist\vcredist_x86.exe" DetectCondition="VC2012CPPX86REDIST">
    </ExePackage>

    <MsiPackage Id="BlmInstall"
        SourceFile="..\bin\Release\BlmInstall.msi"></MsiPackage>
    <MsiPackage Id="UAUDriver" SourceFile="..\redist\setup.msi"></MsiPackage>
</Chain>

我希望系统在安装.NET之后重新启动,然后在自动重新启动后继续安装。 DotNET软件包组定义为:

<Fragment>
    <PackageGroup Id="Netfx45Xxx">
        <ExePackage
            Id="Netfx45Xxx"
            Cache="no" Compressed="no"
            PerMachine="yes"
            Permanent="yes"
            Vital="yes" InstallCommand="/q"
            SourceFile="..\redist\dotnetfx45_full_x86_x64.exe"
            DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=225702"
            DetectCondition="NETFRAMEWORK40"
            InstallCondition="(VersionNT >= v6.0 OR VersionNT64 >= v6.0) AND (NOT (Netfx4FullVersion=&quot;4.5.50709&quot; OR Netfx4x64FullVersion=&quot;4.5.50709&quot;))">

            <ExitCode Value="1641" Behavior="forceReboot"/>
            <ExitCode Value="3010" Behavior="forceReboot"/>
            <ExitCode Value="0"    Behavior="success"/>
        </ExePackage>
    </PackageGroup>
  </Fragment>
  1. .NET Framework安装完成后,Windows将显示其通常的窗口,其中包含已打开的应用程序列表,并要求用户强制重启。 问题是这些列表也包含我的安装应用程序。 当我的安装程序要求用户中止我自己并强制重新启动时,它看起来非常糟糕。 怎么解决呢?

  2. 重新启动后,安装将继续,但是用户被迫阅读许可协议并再次接受它。 有可能避免吗?

最后,我们设法解决了这个问题:

  1. 退出代码很好。 原因是错过了.NET安装程序命令行参数/norestart Netfx45Xxx软件包组的InstallCommand应该如下所示:

    InstallCommand =“ / norestart / q”

使用InstalCommand的此值,在安装期间,Windows不会要求强制重新引导,而是允许安装程序自行执行重新引导。

  1. 因此,如上所述,Windows强制重新启动似乎妨碍了重新启动的执行。 由于异常完成,建议不要添加特殊的Windows注册表项,以使安装应用程序在系统重新启动后继续运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM