3

Windows(Vista)システムのどこに、すべてのユーザー、つまりコンピューターのすべてのユーザーが読み取りおよび書き込み可能である必要があるデータを配置する必要がありますか?VistaのC:\ Users \ xxx \ AppData \ something、C:\ Program Files、C:\ ProgramDataディレクトリ、およびUACの概念は少し混乱しています。

さらに、Javaでそれらの場所を特定するための準備が整ったソリューションはありますか?System.getPropertiesにはuser.homeとuser.dirしかなく、どちらもグローバルに書き込み可能ではないため、ネイティブライブラリとの対話が必要になると思います。

4

4 に答える 4

5

管理者権限を持たないユーザーにグローバル設定の変更を許可する必要がある場合、適切なアプローチは、アプリケーションのインストーラーを作成し、インストール中に、ユーザー領域が許可するように「共通アプリケーションデータ」フォルダーにアクセス許可を設定することです。それに書き込みます。

この投稿を参照してください:一般的な書き込み可能なアプリケーションファイルをどこに置くか?

于 2009-05-20T05:20:26.467 に答える
2

データが非常に大きい場合を除き、Preferences APIを参照してください。特にPreferences.systemNodeForPackage。これにより、プラットフォームに依存せず、システム全体で、バックエンドに依存しないストレージ機能が得られます。

于 2009-04-15T08:55:12.067 に答える
1

さらに、Java でそれらの場所を特定するための解決策はありますか?

%PROGRAMDATA%、%PROGRAMFILES% などの適切な環境変数を確認できます。

于 2009-04-15T09:00:05.940 に答える