我试图用Java代码打开C驱动器中存在的目录,但是失败了。由于访问被拒绝,它将引发异常。我正在使用Windows7。如何打开该目录。有什么建议么。
最佳答案
我认为这是一个UAC问题。
UAC(用户访问控制)是自Windows Vista以来集成的新的Microsoft Windows系统,它试图类似于Linux的“ sudo”命令。
微软最终意识到,以管理特权运行所有进程会带来安全隐患,因此添加了此功能。
作为Win7用户,您可能已经注意到,当您尝试安装某些程序时,会出现提示询问您是否允许该进程在管理员级别运行。那就是您的UAC。
问题是无法将正在运行的进程提升到管理员级别,并且该软件必须从一开始就在管理员级别运行(右键单击->以管理员身份运行)。
也可以转到程序可执行文件的属性,并将其设置为需要管理特权才能运行。
如果您只需要在“提升”模式下完成一个小操作,则可以使用“提升”生成一个新进程来为您做一个小任务。查看Java API / Google,了解如何执行此操作。