這個很奇怪。 Visual Studio 2008似乎不會釋放它爲我的項目創建的.DLLs的句柄,因此,當Studio試圖覆蓋已更改的.dll時,第二次(和隨後)會生成訪問被拒絕的錯誤。我也無法複製/刪除有問題的.dll(Tasks.dll),而Visual Studio在我構建一次後打開。 Process Explorer告訴我該文件正在被devenv.exe使用,所以我知道在構建完成後Visual Studio不會放棄它。Visual Studio 2008的.dll文件不能被覆蓋,訪問被拒絕
有沒有人看過這個之前,如果是的話,我能做些什麼呢?很明顯,在每個構建之間打開和關閉Visual Studio並不是一個可接受的解決方案,並且問題在整個系統重新啓動時仍然存在。
更多背景:我在另一個項目的UsingTask MSBuild指令中使用了導致錯誤的項目的DLL(Tasks.dll),我們稱它爲Test。項目構建順序的設置是爲了在測試之前構建任務,然後Test的AfterBuild任務將從/bin/debug/Tasks.dll調用任務。
您是否將其他項目作爲項目引用,或者直接從其\ bin引用它們的DLL? – 2010-05-03 20:19:46
您是否已將bin目錄添加到源代碼管理並將其鎖定? – 2010-05-03 20:26:32
該項目不受源代碼管理,因此至少在那裏沒有問題...編輯以解決其他問題 – Joel 2010-05-03 20:38:02