1

ここhttp://www.tramontana.co.hu/wix/からwixチュートリアルコードを変更して、独自のインストーラーを作成しました。

インストーラーを実行してアプリケーションをセットアップする場合、問題はありません。しかし、インストーラーを再度実行すると、「この製品の別のバージョンが既にインストールされています...」というウィンドウが飛び出しました。

ただし、サンプルでは、​​プログラムがすでにインストールされた後にインストーラーを実行すると、メンテナンスモード、「インストールの変更、修復、または削除」ダイアログが表示されるはずです。

WixUI_Mondoを使用していますが、メンテナンスモードが自動的に提供されると思いますが、起動方法はありますか?

4

2 に答える 2

12

しかし、インストーラーを再度実行すると、ウィンドウが飛び出し、「この製品の別のバージョンが既にインストールされています...」と表示されました。

これは、まったく同じ製品IDで、異なるパッケージIDを使用してインストーラーを再構築し、それを再実行したときに発生するエラーです。

元のMSIファイルを実行すると、メンテナンスモードになります。

元のMSIがもうない場合でも、プログラムの追加/削除を介して製品をアンインストールできます。これが可能なのは、Windowsインストーラーが。の下にランダムな名前のMSIファイルをキャッシュするためですc:\windows\installer\

きめ細かいアップグレードシナリオ(パッチ適用など)をサポートする必要がない限り、wixヘルプトピック「方法:インストーラーでメジャーアップグレードを実装する」の説明に従って、製品IDを設定してメジャーアップグレードを実装することをお勧め"*"します。

于 2009-12-23T23:46:11.480 に答える
3

これがあなたが見逃しているものであることを願っています:

機能しているがユーザーインターフェイスがない既存のインストーラーがあると仮定すると、WixUIストックダイアログセットを使用するために従う必要のある手順は次のとおりです。

  1. ダイアログセットの1つのId属性を使用して、UIRef要素をインストーラーのソースコードに追加します。あなたの場合:

    <Product ...>
    <UIRef Id="WixUI_Mondo" />
    </Product>
    

ダイアログをカスタマイズして、カスタムの「メンテナンス」ダイアログを作成することもできます。

-幸運を。クリス

于 2009-12-23T20:19:19.860 に答える