gh,这是一个古老的问题,有时仍会在Visual Studio中弹出某些问题。它被我咬了好几次,我已经花了很多时间重新启动和与VS战斗。我敢肯定,这里已经讨论了不止一次。在MSDN论坛上也有讨论。没有实际的解决方案,但是有两种解决方法。在这里开始研究。
发生的情况是,VS正在获取文件的锁,然后不释放它。具有讽刺意味的是,该锁定阻止VS本身删除文件,以便在重建应用程序时可以重新创建文件。唯一明显的解决方案是关闭并重新启动VS,以使其释放文件上的锁。
我最初的解决方法是打开bin / Debug文件夹并重命名可执行文件。如果它已锁定,则无法删除,但可以重命名。因此,您可以在末尾添加一个数字,这样您就可以继续工作而不必关闭所有窗口并等待VS重新启动。甚至有人使用pre-build事件将此操作自动化,以将随机字符串附加到旧的输出文件名的末尾。是的,这是一个巨大的骇客,但是这个问题令人沮丧和失望,您将无所不能。
后来,经过更多的实验,我才知道,似乎只有在其中一位设计师开放的情况下构建项目时,问题才会出现。因此,长期有效的解决方案使我无法再次处理这些愚蠢的错误之一,这是确保在构建WinForms项目之前始终关闭所有设计器窗口。是的,这也有点不方便,但可以确保不必每小时重新启动VS两次或更长时间。
我认为这也适用于WPF,尽管我不使用它,也没有亲身经历该问题。
我也尚未尝试在VS 2012 RC上重现它。我不知道它是否已经修复。但是到目前为止,我的经验是,即使微软声称已修复它,它仍然可以弹出。在VS 2010 SP1中仍然存在。当然,我并不是说他们的程序员是白痴,他们不知道自己在做什么。我认为错误的原因多种多样,并且/或者很难在实验室中可靠地复制。这就是我没有亲自提交任何错误报告的相同原因(尽管我已经为其他人+1),因为我似乎无法可靠地重现它,就像可恶的雪人一样。
<特别针对任何人的终极咆哮>