[Wix] インストーラーのGUID

Windows のinstaller msiファイルには
UpgradeCode
ProductCode
PackageCode
の3種類のGUIDが指定できる。
同じプロダクトのバージョンアップでは
バージョン番号が上がる
UpgradeCodeが同じ
produtcodeが違う
packagecodeが違う
という条件が必要。このとき、バージョン番号の低いものが消去されて新しいものに上書きされる。
ところが、インストーラーで、Productのバージョン番号が同じ場合、Upgradeせずにインストールされた。これは意図したものではなくバージョン番号を上げ忘れたのだ。
これでインストールするとコントロールパネルを見ると同じものが2つ並ぶ。それぞれをアンインストールすることができる。
自分の意図としては、同じバージョンがすでにインストールされています、というエラーになってほしいのだが、何が間違っているのだろう。
この間違いはカッコ悪いので、バージョン番号を上げることを忘れないようにしなければ。

広告
%d人のブロガーが「いいね」をつけました。