7

Visual Studio 2008から2012に移行しています。プロジェクトの1つに、2012年にサポートされなくなったセットアッププロジェクトが含まれています。WiX3.6で再構築することにしました。ファイルをセットアップするためのWiXセットアッププロジェクトと、セットアッププロジェクトに前提条件をバンドルするための別のWiXバンドルプロジェクトを作成しました。

可能であれば、このセットアッププロジェクトを以前のインストールとシームレスに連携させたいと思います。たとえば、VS2008のVSセットアッププロジェクトによって作成されたsetup.exeを使用して、システムにバージョン1.0をインストールしたマシンがあります。これで、VS2012のWiXバンドルプロジェクトによって作成されたsetup.msiを使用してバージョン2.0をコンパイルしました。バージョン2.0msiを実行すると、同じセットアップの古いバージョンがインストールされていることを認識し、その上で更新を実行(または再インストール)したいと思います。

したがって、私の問題は、バンドルとセットアッププロジェクトのそれぞれに独自のUpgradeCodeとバージョンが含まれていることです。バージョン1.0のセットアップのUpgradeCodeを受け取る必要があるのはどれですか?現在および将来バージョン管理する場合、これらの一方または両方をバージョン管理しますか?

4

1 に答える 1

5

私は多かれ少なかれ、さまざまなことを試してそれを理解しました。ブートストラッパーがインストールされると、これが[プログラムの追加と削除]メニューに表示されます。したがって、ブートストラッパーのアップグレードコードは、古いパッケージのアップグレードコードと一致する必要があると考えました。その後、セットアップは前のバージョンがインストールされたことをすぐに認識し、続行する前にアンインストールする必要があります。その場合、msiのアップグレードコードは別の一意のコードになります。次に、ビルドごとにmsiプロジェクトとbootstrapperプロジェクトの両方のバージョンを更新する必要があります。

于 2013-01-26T16:21:04.200 に答える