74

Wix でインストール プログラムを作成しましたが、プログラムを正常にインストールできました。更新する必要があるので、バージョン番号を上げましたが、古いプログラムの上に新しいプログラムをインストールしようとすると、古いバージョンが既にインストールされていると不平を言い、最初にアンインストールするように指示されます。

再インストールする前に更新または自動的にアンインストールするにはどうすればよいですか?

4

5 に答える 5

39

私は上記のすべての投稿をチェックしましたが、これを機能させるために何年費やしました。

手順3のアップグレードに関する公式HOWTOヒントは、非常に役立ちました。「この製品の別のバージョンがすでにインストールされています」というメッセージを無効にするには、新しいものが必要です。Product/@Id

このアップグレードセクション(製品の子)を使用しました:

<Upgrade Id="$(var.UpgradeCode)">
  <UpgradeVersion Minimum="1.0.0"
                  IncludeMinimum="yes"
                  OnlyDetect="no"
                  Maximum="$(var.Version)"
                  IncludeMaximum="no"
                  Property="PREVIOUSFOUND" />
</Upgrade>

OnlyDetect「no」に設定されていることに注意してください。次のセクション(製品の子)がある場合、これにより古いバージョンの削除がトリガーされます。

<InstallExecuteSequence>
  <RemoveExistingProducts After="InstallInitialize"/>
</InstallExecuteSequence>

また、明らかに、バージョン番号の最初の3つのコンポーネントのみがアップグレードのチェックに使用されていることに注意してください...

于 2010-01-05T13:12:06.380 に答える
-3

この要素を要素の下に置くだけProductです:

<MajorUpgrade AllowDowngrades="yes" />

このハウツーの詳細情報

于 2014-03-21T11:29:32.900 に答える