之前釋放的DLL與Visual Studio生成時,我有一個週期性出現的問題,2010年 有時,拒絕建立與類似的錯誤消息:VS2010並不總是建立
錯誤102無法複製文件「XXXXX \ Debug \ Services.dll「改爲」bin \ Debug \ Services.dll「。該進程無法訪問文件'bin \ Debug \ Services.dll',因爲它正在被另一個進程使用。
我發現的唯一補救措施是重新啓動Visual Studio。關閉解決方案是不夠的。 我試圖找到與Process Explorer的罪魁禍首,因爲我懷疑我自己的一個線程沒有關閉,因爲它應該。但是,該過程是devenv.exe,即Visual Studio本身。此外,即使在構建升級的VS 2008項目時,我也只能通過VS 2010獲得此症狀。我從來沒有遇到與VS 2008下的相同項目的這個問題。
我有很多自定義的WPF用戶控件,我有一個理論認爲它是WPF設計器,有時會保持在控件的相關dll的時候釋放他們的建設。這個理論並不完善,因爲這是一個週期性問題,有時在沒有設計公開的情況下發生。我也有一個Windows窗體項目相同的問題。有時候我會在一天沒有鎖定的dll。有時它是每隔一個建築物左右。
我已經問過微軟這個問題,他們告訴我做一個Visual Studio的轉儲並調試轉儲。我沒有發現這是一個很好的建議。
有沒有人經歷過類似的事情?這真的很煩人。
更新1
因爲這似乎是一個Visual Studio的漏洞和微軟的迴應是,他們不打算做任何事情,我想鼓勵大家誰與自定義用戶的工作控件上調在connect.microsoft.com上投票這個bug。
該錯誤是都在這裏報道:https://connect.microsoft.com/VisualStudio/feedback/details/587281和我在這裏https://connect.microsoft.com/VisualStudio/feedback/details/568672
更新2 我已經破解一起簡單的Visual Studio宏,建設之前關閉了所有.XAML文件。到目前爲止,我還沒有經歷過這個宏的鎖定。 在Visual Studio中添加以下宏,並將其分配給您最喜歡的構建捷徑。也許/也許不會解決問題。
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics
Public Module CloseXamlAndBuildModule
Sub CloseXamlAndBuild()
For Each myDocument As EnvDTE.Document In DTE.Documents
If myDocument.Name.EndsWith(".xaml") Then
myDocument.Close()
End If
Next
DTE.Solution.SolutionBuild.Build()
End Sub
End Module
您使用哪種語言? – 2010-09-17 14:42:56
我使用C#4.0。我已經嘗試過VS 2010 pro和VS 2010 Ultimate。我也嘗試刪除所有插件,但它沒有改變任何東西。在舊的.NET 2.0項目中也會出現該問題。 – Holstebroe 2010-09-17 15:24:32