3

我正在开发一个应用程序,它使用 java 在本地或远程的特定目录上安装 exe 文件。无论如何要检查该远程位置是否具有管理员权限,还是使用 java 的可安装位置?

提前致谢。

4

1 回答 1

5

在 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,如果它是真的,它写了一个临时文件,带有一个简单的字符串并检查它是否存在 ( File#exists) 并且内容与我们编写的内容相同。如果那行得通,那么确定我们可以写信到该位置...

(注意偏执狂,我们花了 2 周的时间进行测试以找到问题并提出我们可以信任的解决方案)

于 2012-10-22T06:19:05.087 回答