2017-06-12 12 views
1

申し訳ありませんが、私はツールセットとwxs関連の知識に初心者だと言わなければならない...以前のバージョンのmsi/wxsファイルを使用して新しいアップグレードmsiパッケージを生成できますか?

現在、私たちはWindowsデスクトップアプリケーションを開発しています。製品バージョンをリリースするたびに、バイナリファイルをビルドチームに渡し、チームを構築してアップグレード.msiパッケージを生成するのに役立ちます。これには時間がかかります。

私は、MSIのインストールプロセス中にインストールプロセスが変更されていないかどうかを調べるために、dark.exeコマンドを使用して古いバージョンのmsi pakcageからwxsファイルを生成し、 GUID、製品名、製品バージョンなどを変更すると、candleとlightコマンドを使用してwxsを新しいアップグレードmsiパッケージに再度変更することができます。簡単なケースのために私たちのためにmsiパッケージを生成するビルドチームはもう必要ありません....

私は正しいですか?はいの場合、いくつかの簡単なアップグレードの場合、いくつかのアプリケーションのアップグレード作業を自動的に処理することができます....

答えて

2

はい、結果のwxsファイルのProductタグにid属性の*がある場合、インストーラの各ビルドに新しいGUIDが生成されます。

<Product Id="*" 
     Version="1.2" 
     UpgradeCode="$(var.UpgradeCode)"> 

    <MajorUpgrade AllowSameVersionUpgrades="yes" 
        DowngradeErrorMessage="!(loc.DowngradeErrorMessage)" /> 

</Product> 

アップグレードコードを静的にしておくと、自動的に以前のバージョンがアンインストールされ、新しいバージョンがインストールされます。 AllowSameVersionUpgradesは、これがマイナーバージョンの変更に使用できるようにしますが、インストーラーが大きく、インストールに長時間かかる場合は、おそらくパッチを検討するべきです。

関連する問題