2017-05-19 9 views
0

私はWiX Burnプロジェクトを持っています。バージョン番号を参照することなく、毎回MSIファイルの1つを実行したいと思います。WiX:バージョン番号への参照なしでMSIファイルを実行

具体的には、のは、私がMSI AMSIのB、およびMSI Cを持っているとしましょう。

私はプロジェクト(つまり、複雑なパッチやその自然のものよりも簡単そうなので、私はメジャーアップデートを使用しています)への更新を押し出すときに、私は希望:

  • MSI Aをインストールしますif-and-only-のバージョン番号がターゲットマシンのバージョン番号より大きい場合。
  • 実行する場合は、のバージョン番号がターゲットマシンのバージョン番号よりも大きい場合。すべてのを実行するための

    (つまり、Windowsインストーラの動作を正確にどのようにだから、これまでのところ、これは、素晴らしいです。)

  • 最後に、MSI C。シングル。時間。どんなものでも。

物事私は試みることができる:

私はちょうどそのバージョン番号は、すべてのビルドのためにますます大きくなっていることを確認しますが、何私はバスで打撃を受けるかのだろうか?このインストーラはしばらくお待ちください。

実行可能ファイルのバージョン番号をMSI Cのバージョン番号にバインドできますが、その特定のロールアウトで実行ファイルが更新されないとどうなりますか?インストールされている実行可能ファイルはありませんが、すべてのロールアウトで更新されることが保証されています。

バージョン番号をintに変換してから、intをインクリメントするカスタムアクションを実行し、それをバージョン番号などに変換する方法はありますか?

- それでもいいですか?何らかの切り替えですか?

答えて

0

バージョン番号に関係なく、インストールされたパッケージをアップグレードするようにメジャーアップグレードオプションを設定できます。

<MajorUpgrade Schedule="afterInstallInitialize" 
       AllowDowngrades="yes"/> 

Alosでは、ファイルのオーバーライドについてはREINSTALLMODE Propertyをチェックしてください。

+0

ちょっと、MajorUpgrade要素 - これは良いアイデアかもしれません!確かめます。私はそれらの特性について何も知らない。 MSDNのページでは、コマンドラインで(フラグを使用して)何かを使用するように見えますが、WiXではマークアップのプロパティを使用します。だからそれは混乱している。 – Bob

+0

これは素晴らしい動作します。ありがとう。 – Bob

関連する問題