C# · 12月 29, 2021

c# – 无法编译,因为Visual Studio正在使用我的DLL

我在Visual Studio 2008中有一个相当大的.NET 2.0解决方案(151个项目).通常,当我在VS中做一个构建(即使只有一个项目)时,我得到一个错误,表示它不能复制我的一个DLL程序集到输出目录,因为它正在使用.我没有任何其他进程在后台运行或现有的调试会话将使用这个程序集.如果我打开Process Explorer并搜索此程序集名称Visual Studio(devenv.exe)作为唯一的结果.看看结果Visual Studio将我的程序集加载为DLL由于某些原因.关闭解决方案并重新打开它并不能解决问题.我必须完全退出VS,以摆脱这个相当破坏性的这个问题.有人有什么想法吗?我在Window 7上运行,我不认为我在 Windows XP上看到这个问题.

我正在运行Visual Studio 2008版本9.0.30729.1 SP.如果重要的话,我也在运行ReSharper 6.

解决方法

Does anyone have any idea what is going on? I’m running on Window 7,I
don’t think I saw this issue on Windows XP.

我在Windows XP上一直遇到这个问题,甚至没有本地化到Visual Studio 2008.对于我来说总是有效的是我只需要清理所有的解决方案,这样可以摆脱我系统内存中的任何文件,因为Visual工作室.

Visual Studio将您的任何引用保存在内存中,所以当其中一个引用被更新时,Visual Studio必须将它从内存中释放出来.如果真的发生的更多,那么“一度”,那么你可能会试图减少你的项目中的解决方案的数量.