2011-09-14 13 views
4

izPack 4.3.4を使用してJavaプロジェクトのグラフィックインストーラで作業していますが、インストールはうまくいっていますが、izPackは、Windowsの「プログラムと機能」で動作しないアンインストーラを作成します。

Error: Unable to access jarfile C:\Program Files (x86)\myproject\uninstaller\uninstaller.jar 

事実が、私は私のプログラムのパスをインストールしていない\アンインストーラのディレクトリに入れ、根でアンインストーラの名前を変更するために選びましたということである:「プログラムと機能」ウィンドウでの彼の参照には、メッセージが表示されます。

<info> 
... 
    <uninstaller name="uninstall.jar" write="yes" path="${INSTALL_PATH}" /> 
... 
</info> 

そして、実際には、uninstall.jarファイルはCで作成されます:XMLを参照してください\プログラムファイル(x86の)\ myprojectに\を、私はそれの上やスタートメニューthroughtダブルクリックした場合、それは動作します。私は、izpacksがWindowsのレジストリに間違ったデータを書き込んで "プログラムと機能"を参照していると思います...しかし、私は理由を知らない...

答えて

1

WindowsでIZPackを使用してインストールしている場合、レジストリスペックを持つ必要があります。その人は必要なすべてのレジストリエントリを書き込みます。 Windowsは、アンインストールを開始するためのファイルとしてレジストリ値 "UninstallString"を探します。そのファイルを上書きする必要があります。たとえば、私の場合:

<pack name="UninstallStuff"> 
<!-- Special "pack", if not defined an uninstall key will be generated automatically --> 
<value name="UninstallString" 
    keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$APP_NAME" 
    root="HKLM" 
    string="$INSTALL_PATH\uninstall\uninstaller.cmd"/>  
<pack name="UninstallStuff"> 
関連する問題