“如何修复”&引用;Windows无法访问指定的设备、路径或文件..”;什么时候重新运行程序?

“如何修复”&引用;Windows无法访问指定的设备、路径或文件..”;什么时候重新运行程序?,windows,Windows,我不知道我做了什么。我正在做一个节目。如果重新运行程序,则会发生错误: Windows无法访问指定的设备、路径或文件。您可能没有访问该项目的适当权限 我的程序使用UAC清单。我试图不使用清单,但得到了相同的错误 通过使用“以管理员身份运行”,我可以重新运行我的程序 你曾经面对过这个问题吗?窗户怎么了?我应该研究什么样的源代码 由于这个问题,myprogram有一个由Windows创建的互斥锁。。lol您的程序正在尝试创建或打开文件。第一次以管理员身份运行程序时,它创建了该程序,现在该文件上的AC

我不知道我做了什么。我正在做一个节目。如果重新运行程序,则会发生错误:

Windows无法访问指定的设备、路径或文件。您可能没有访问该项目的适当权限

我的程序使用UAC清单。我试图不使用清单,但得到了相同的错误

通过使用“以管理员身份运行”,我可以重新运行我的程序

你曾经面对过这个问题吗?窗户怎么了?我应该研究什么样的源代码


由于这个问题,myprogram有一个由Windows创建的互斥锁。。lol

您的程序正在尝试创建或打开文件。第一次以管理员身份运行程序时,它创建了该程序,现在该文件上的ACL对于普通用户是只读的,对于管理员是读写的。作为普通用户运行您的程序失败,当它试图打开文件进行写入时,访问被拒绝。

我知道这是旧的,但我也遇到了同样的问题,如果您将
eclipse
文件夹移到桌面上(毕竟它是可移植的),它解决了问题。

哪一行代码导致了错误?因此解决方法是正确关闭文件,可能是使用块将文件的使用包装在
中。@Joel Coehoorn-Lol,是的。我可能应该提到这一点。是的,我的程序经常打开并创建一个文件。对不起,我不明白你的建议“使用块”。是C++风格吗?我不会用它来编码。你能告诉我更多我应该如何处理我的源代码吗?我应该寻找什么?如果你真的发布了创建文件的代码,可能会有所帮助。这将帮助我们了解您使用的语言和API,因此我们可以为您的问题提出正确的解决方案。我的示例代码FS:=TFileStream.Create(文件名、fmOpenRead或fmsharedynone);每次我使用那个代码,我就必须做FS.free,这就是你的意思吗?