重要な詳細を省略している場合は、事前にお詫び申し上げます。Wix 'Advanced'インストールで以前のバージョンがアンインストールされない
新しいバージョンをインストールする前に、以前のバージョンのソフトウェア(およびすべてのコンポーネント)を削除する必要があるアップグレードを実行しようとしています。
私はあなたに細部を退屈させないようにしようとしています。あなたが「典型的な」インストールをすると、すべてが計画どおりに進むと言います。高度なインストール(すべてのユーザーにインストールを指定し、インストール場所を指定するなど)を行う場合は、「アンインストールする前のバージョン」の手順をスキップしているようです。
これまでのところ、私は次のことをやった:
は
は 'OLDVERSIONBEINGUPGRADED' プロパティが正しく
に設定されている-verified別のstackoverflowの質問のアドバイスを一致させるために私のUpgradeVersionタグを-Edited - アップグレードコード/ idsが同じであることを確認する、バージョン番号が順次になる(1.0.8から1.0.10にアップグレードする) - 結局のところ、 '典型的な'インストールが正しく機能する!
ここに与えられたアドバイス-Followed:WiX-- always overwrite the previous versionを、これに続く:我々はすでに何かをインストールしているので、http://wix.sourceforge.net/manual-wix3/major_upgrade.htm
-Triedそれによって以前のバージョンをアンインストールするために、手動で呼び出します。msiexecでハックを実装するためには、(これは失敗した製品IDです? - このスケジュールを設定するより良い方法)がある
私の製品/アップグレードセクションでは、次のようになります。
<Product Id="GUID1" UpgradeCode="GUID2" Version="1.0.10.0">
<Package Compressed="yes" InstallerVersion="200"/>
<MajorUpgrade Schedule="afterInstallInitialize"
DowngradeErrorMessage="Another version of [ProductName] is already installed."/>
<Upgrade Id="GUID2">
<UpgradeVersion Minimum="1.0.10" OnlyDetect="yes"
Property="NEWERVERSIONDETECTED" />
<UpgradeVersion Maximum="1.0.10" IncludeMaximum="no"
Property="PREVIOUSVERSIONINSTALLED" />
</Upgrade>
私はウィックスの初心者ですので、私は重要なDを見落としている可能性が私の問題を記述しています。重要なことを忘れてしまった場合は、教えてください。
ご提供いただける入力がありましたら、事前にお知らせください。
入力いただきありがとうございます。 テストでは、毎回同じマシンごとのインストールを実行すると、同じ問題が発生することがわかりました。 これはまだ同じ制限ですか? 「マシンごと」の選択がアップグレードをブロックするのか、それともスコープが変更されるのでしょうか?あなたはそのページで提案されたハックを使用してテストしましたか? – user1267756
FYI - 私たちの回避策は、高度なインストールを禁止することでした。常にユーザーごとにインストールされます。他のコンテキストで役に立つと思われる機能や機能があれば、将来的にこれを調整する必要があります。 – user1267756
@ user1267756:私の場合は範囲の変更でした。スコープが変更されていなくてもまだ問題が発生している場合は、おそらく別の問題です。そして、いいえ、私はハックをテストしたことはありません。 –