Visual studio Visual Studio输出文件权限?

Visual studio Visual Studio输出文件权限?,visual-studio,file,visual-studio-2010,permissions,administrator,Visual Studio,File,Visual Studio 2010,Permissions,Administrator,我正在使用VisualStudio2010,如何设置或自动将输出文件的所有者从VisualStudio(如可执行文件)更改为管理员以外的用户 当前所有输出文件都归管理员所有(因为VisualStudio是通过管理权限启动的),所以有时由于访问权限,我无法删除这些文件 有时VisualStudio本身也不能删除它(在我运行可执行文件之后),直到几分钟,当我需要重建这些可执行文件时,这真的很烦人。有人知道这里的实际问题是什么吗 错误消息是:error LNK1168:无法打开[path to fil

我正在使用VisualStudio2010,如何设置或自动将输出文件的所有者从VisualStudio(如可执行文件)更改为管理员以外的用户

当前所有输出文件都归管理员所有(因为VisualStudio是通过管理权限启动的),所以有时由于访问权限,我无法删除这些文件

有时VisualStudio本身也不能删除它(在我运行可执行文件之后),直到几分钟,当我需要重建这些可执行文件时,这真的很烦人。有人知道这里的实际问题是什么吗


错误消息是:
error LNK1168:无法打开[path to file].exe进行写入

好吧,创建的文件将归创建者所有,如果您以管理员身份运行Visual Studio,则从所有者的角度来看,您只能以这种方式使用它

就个人而言,除非您将IIS用于Web应用程序,否则我发现自己作为普通用户越来越频繁地运行VisualStudio,至少在VS2010中是这样

关于VisualStudio无法删除文件的问题,我以前看到过生成错误,有时如果有多个项目引用同一个程序集,也会出现这种情况。您最好尝试跟踪锁,然后您可以关闭锁,或者重新启动VisualStudio


我通常使用processexplorer(来自SysInternals)简单地删除文件上的句柄。(注意:这不是一个“好”的想法,但它很有效……)

没有人给出正确的答案,因此我将此问题作为操作系统中的一个错误来结束,而不是在Visual Studio中,因为文件句柄属于“系统”进程(PID 4),所以可能O/S被破坏了我无法释放文件句柄,因为它使用process explorer报告文件句柄无效。

Wooho我终于找到了这个

这是Windows7中的一个bug,很可能是WindowsServer2008中的bug(可能只有64位版本)。当您禁用服务时,它会出现

重新启用此服务已为我修复此问题

你无法想象我有多高兴,这让编程变得如此令人沮丧,因为它不仅会搞乱VC,还会搞乱任何编译器,更重要的是,它是非常随机的

关于它为什么会导致问题的更多信息

其他似乎相关的SO问题列表:


如上所述,解决此问题的方法是启用Windows应用程序体验服务。以下是如何做到这一点:

  • Windows键+R
  • 在弹出的窗口中键入“services.msc”
  • 在列表中,找到“应用程序体验”
  • 双击此按钮,将“禁用”更改为“启用”
  • 现在应该可以了!为我工作:)


    来源:

    AFAIK Visual Studio始终以管理员身份运行(如果我需要运行调试器,这是其中一种情况),在第二种情况下,我没有生成错误,引用同一程序集是什么意思?同时,我将尝试Process Explorer。我尝试了Process Explorer,我可以关闭句柄,但我怎么知道,哪一个进程拥有句柄?如果我想通过总是通过process Explorer释放句柄来重建项目,这仍然很烦人。如果每次都是这样,那么您的应用程序或visual studio解决方案中都会发生一些事情。您当时是否有在visual studio之外运行的应用程序?它是否被任何其他项目引用?没有其他应用程序(VS除外),其独立项目(和/或任何项目)只是简单的控制台应用程序,如
    printf(“hello world”)
    受到影响,顺便说一句,如果我在Process Explorer中查找时遇到此问题,则文件句柄属于
    系统
    进程。同样,句柄由PID为4的系统进程拥有。请你再次打开这个问题,一般来说,即使没有最新的答案,也最好保持打开状态,这显然不是你的系统发生的问题。似乎这解决了我的问题。。非常感谢。由于愚蠢的锁定问题,我损失了很多时间……这个解决方案出乎意料,我一直在关闭应用程序体验,认为“这是不必要的,可能会减慢我的机器,等等”。过了一会儿,我开始对锁定问题感到沮丧,于是转向谷歌。然后,我找到了回到这个解决方案的方法,重新打开应用程序体验,并对它的工作原理感到惊讶。我想我已经做了三次了。这对我不起作用。不过,我的解决方案现在加载得快多了。谢谢,这对我也很有用。Visual Studio 2010无法删除在上一次生成中生成的.dll。启动应用程序体验服务立即修复它!