2

インストーラーを作成した Java アプリケーションがあります。アプリケーションをお気に入りのディレクトリにインストールするかどうかはユーザー次第であるため、コードでは、ユーザーがアプリケーションをインストールした場所を知る必要があります。では、Java コードを使用してこの情報を取得するにはどうすればよいでしょうか。Windowsプラットフォームに固有のものが必要です。

4

2 に答える 2

2

プログラムの現在の作業ディレクトリを提供する which を使用できますSystem.getProperty("user.dir")が、これはインストール ディレクトリではない可能性があります。

代わりに、インストーラーから、ユーザーが選択したインストール場所を含むSystem.getProperty("user.home")場所にファイルを書き込みます (.MyApplicationConfig隠しファイルにするか、ディレクトリ内に配置するなど)。{user.home}\AppData\Local

これにより、ファイルが中央の既知の場所に保存されているため、将来どこからでもファイルを読み取ることができます

于 2014-09-11T05:51:21.230 に答える
1

ユーザーに任されているため、アプリケーションがどこにインストールされているかを見つけるのは困難です。したがって、アプリケーションのインストール ディレクトリを取得する 1 つの方法は、Windows マシンで環境変数を使用することです。インストーラーを作成するときは、環境変数を設定し (「XYZ」変数などの新しい変数を作成するか、既存の変数を使用することもできます)、その値をアプリケーション ディレクトリに設定します (使用しているインストーラーについて言及していないため)。そのため、アプリケーションのインストーラーをビルドする際にこれをどのように行うかはわかりません)。これが完了すると、この環境変数の値を Java コードで取得できます。これにより、アプリケーションのインストール ディレクトリが得られます。環境変数 XYZ の値を取得するコードは次のとおりです。

System.getenv("XYZ");
于 2014-09-11T05:44:05.477 に答える