2012-01-27 3 views
1

IzPackでインストーラを1つ作成しました。すべてうまく動作します。今、私はそれが既に存在する場合、アプリケーションの更新を世話する1つのインストーラを作成するための良い方法はありますか?IzPack:1つのアプリケーションアップデータを作成できますか?

インストーラの実行をもう一度試しましたが、アプリケーションがインストールされていることを認識しませんでした。

答えて

0

IzPackをインストールおよび更新するために使用しました。 IzPackはネイティブにパッケージングシステムと結びついていないため、IzPackが何かがインストールされているかどうかを最終的に知る方法はありません。あなたはレジストリやインストール時に作成するいくつかの特定のプログラムと対話しようとするかもしれませんが、それはまだ乱雑です(とにかく)。

しかし、IzPackはファイルを上書きする前に既に存在するかどうかをチェックします。更新を実行している場合は、バイナリを更新するが、ユーザー設定は残しておきたいので、

<packs> 
    <pack name="CorePack" required="yes" preselected="yes"> 
     <description>The core of the app.</description> 
     <file src="bin/binaryapp" targetdir="$INSTALL_PATH/bin" 
      override="true"> 
      <os family="unix" /> 
     </file> 
     <file src="etc/config.conf" targetdir="/etc/appdir"> 
      <os family="unix" /> 
     </file> 
    </pack> 
</packs> 

バイナリにはconfigがない場合(デフォルトではoverride = false)、override = "true"が表示されます。バイナリが更新され、configは更新されません。

ジェフ

+0

ありがとうございますが、ユーザーはインストールパスを変更することができます。この場合、ソフトウェアは更新されず、重複したインストールが行われます。 –

0

CheckedHelloPanelは、少なくとも窓のために、あなたの仕事を行います。レジストリに何かを書き込んで、再インストールしようとするとこれをチェックします。

関連する問題