我在这台W7 64位计算机上安装了Eclipse(Kepler),最初只需单击桌面图标或其他内容即可“正常”运行它。 然后我将整个“工作区”目录替换为另一台机器中的一个(因为我正在更换系统)。
现在,如果我不是“以管理员身份”运行Eclipse,它就会打开,甚至会运行应用......但是不能保存任何内容,包括更改文件和更新任何类型的.metadata。
我改变了所有可能涉及的“所有权”和“权限”。我是这台机器的唯一用户,而且我是管理员组。如果我以“管理员”身份运行,我 CAN 仍然使用它。但是我很难过为什么UAC应该很高兴在没有“as'strator”的情况下运行Eclipse,但现在拒绝......
因为...我对这个问题的理解是,UAC会查看应用程序,并决定它们是否显得狡猾,并在此基础上决定是否必须运行“作为'strator”。那有什么改变?
我可以选择卸载Eclipse并重新安装它,然后逐步添加各种项目文件夹......好吧,可以工作。但我希望尽可能理解这些事情!
答案 0 :(得分:4)
因为......我对这个问题的理解是,UAC会查看应用程序,并决定它们是否显得狡猾,并在此基础上决定是否必须运行“作为'strator”。
UAC没有做那样的事情。 UAC是Windows以管理员身份运行应用程序的功能。应用程序可以以四种方式作为管理员运行(导致出现UAC同意对话框):
requestedExecutionLevel
requireAdministrator
setup.exe
,install.exe
,update.exe
),在这种情况下,Shell选择以高架运行它以防万一ShellExecute
动词runas
我认为发生了两件事之一:
Access denied
错误您尝试将文件复制到受保护的位置(例如程序文件),而是将其重定向到:
C:\Users\Mike\AppData\Local\VirtualStore\Program Files(x86)\Eclipse
然后当你运行Eclipse时,文件就不存在了。
再次,使用Process Monitor查找Eclipse正在寻找的内容。