私は、Javaを使用してローカルまたはリモートの特定のディレクトリにexeファイルをインストールするアプリケーションを開発しています。そのリモートロケーションに管理者権限があるかどうか、またはJavaを使用してインストール可能なロケーションであるかどうかを確認する方法はありますか?
前もって感謝します。
私は、Javaを使用してローカルまたはリモートの特定のディレクトリにexeファイルをインストールするアプリケーションを開発しています。そのリモートロケーションに管理者権限があるかどうか、またはJavaを使用してインストール可能なロケーションであるかどうかを確認する方法はありますか?
前もって感謝します。
Java 7 でこれを達成するためのより良い方法があります。詳細についてはFile I/O (Featuring NIO.2)を参照してください (特にChecking a File or Directoryですが、私は (まだ) この API の経験がありません。
Java 6 以下では、フープ ジャンプを行う必要がありました (特に Windows 7 と UAC では)...
File#canWrite
宛先パスが書き込み可能かどうかを確認するために使用できますが、 true
Windows 7 では、UAC で許可されない場合でも、これが返されます...恐ろしいことに...
基本的に をチェックする単純なユーティリティ メソッドを作成しFile#canWrite
ました。それが true の場合、単純な文字列を使用して一時ファイルを作成し、それが存在するかどうか ( File#exists
) をチェックし、内容が記述した内容と同じであることを確認します。それが機能した場合、その場所に書き込むことができると確信していました...
(パラノイアに注意してください。問題を見つけて信頼できる解決策を見つけるために2週間テストを実行しました)