在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正在使用我的DLL
我正在運行Visual Studio 2008版本9.0.30729.1 SP。如果有問題,我也在運行ReSharper 6。
你的應用程序做了什麼?它是多線程的,也許你在停止程序執行時沒有正確地殺死一個線程? –
@Snorfus - 他的程序確實不重要。它的多線程也並不重要,當他試圖構建解決方案時,問題就出現了,所以程序本身甚至沒有在那個時候運行。 Visual Studio確實保留了一切便利,以便在項目中引用圖書館解決方案。它可能會感到困惑,並且在重建和/或構建之前不會釋放它。 –
可能的重複:http://stackoverflow.com/questions/2002273/visual-studio-locks-output-file-on-build –