1

バンドル プロジェクトには 2 つの EXE インストーラーがあり、どちらもコンピューターを再起動する必要があります。コードは次のとおりです。

<Chain>
    <ExePackage
        Id="RDRole"
        Cache="no"
        Compressed="yes"
        PerMachine="yes"
        Vital="no"
        SourceFile="Resource\ServerManagerCmd.exe"
        Permanent="yes"
        InstallCommand="-install RDS-RD-Server">

        <ExitCode
            Behavior="forceReboot"/>
    </ExePackage>

    <ExePackage
        Id="DoNetFull"
        Name =".NET Framework 4.0 full runtime"
        Cache="yes"
        Compressed="yes"
        PerMachine="yes"
        Vital="yes"
        SourceFile="Resource\dotNetFx40_Full_x86_x64.exe"
        InstallCommand="/q /norestart"
        Permanent="yes">

        <ExitCode
            Behavior="forceReboot"/>
    </ExePackage>

RDRoleとの両方DoNetFullがインストールされている場合、コンピュータを 1 回だけ再起動するにはどうすればよいですか?

4

1 に答える 1

0

これは現在、Burn エンジンではサポートされていません。RollbackBoundaryこの時点で再起動が必要な場合は、次のようなものを作成する機能リクエストが開かれています。と呼ぶことができますRestartBoundary。しかし、それは今日存在しません。

ただし、Burn のほとんどのものと同様に、以前のパッケージで再起動が必要であることに気付いたときに OnExecutePackageComplete から強制再起動を返すカスタム Bootstrapper アプリケーションを開発することで、同じ概念を作成できます。カスタム BA があれば、実装するのはそれほど難しくありません。

于 2013-06-22T20:53:38.147 に答える