2017-10-10 22 views
1

私はInno Setupの定数と同等

System.getProperty("user.home") 

は私が注文したい使用して、私は、実行時に作成したユーザディレクトリの下にバンドルされたJavaFXアプリケーションのための設定ファイルを格納していますInnoSetupはアンインストール時にそのファイルを削除しますが、Inno Constantは適切ではありません。 お願いします。

答えて

1

Windowsでは、user.home%USERPROFILE%の環境変数にマップされます。通常はC:\Users\usernameです。

Inno Setupの同等定数はありません。おそらくあなたはそこにファイルを格納することになっていないからです。ファイルはC:\Users\username\AppData\Roaming\app(または...\Local\app)に保存する必要があります。 Inno Setupでは{userappdata}\app(または{localappdata}\app)です。 Javaの場合、System.getenv("APPDATA")(またはSystem.getenv("LOCALAPPDATA"))を使用できます。


とにかく、あなたの質問に答えるには、{%USERPROFILE}を使用できます。
Inno Setup User Home Pathも参照してください。


(アン)インストーラは異なるローカルアカウント(通常は管理者)を使用して実行することができるようまた、一般的に、それは、Inno Setupの(UN)のインストーラでは、ユーザプロファイルにアクセスしようとする悪い考えです、よりあなたが興味のあるものです。

これはInstalling application for currently logged in user from Inno Setup installer running as Administratorでカバーされています。

+0

しかし、Javaで「\ Local \ app」を取得するにはどうすればよいですか?この場所はInno Uninstallerからアクセスできるのですか?まことにありがとうございます。 –

+0

私はJavaを知らない。しかし、あなたは 'System.getenv(" LOCALAPPDATA ")'を使うことができると仮定しています。 - しかし、 '.. \ Local \ app'を含むアカウント固有のフォルダは、[現在ログインしているユーザのためのアプリケーションをInnoからインストールする管理者として実行されているセットアップインストーラ](https://stackoverflow.com/q/44575666/850848) - それは別のトピックです。 –

関連する問題