2017-06-05 105 views
3

當我建立或重建我的解決方案,我得到的錯誤:Visual Studio解決方案不能編譯,但項目確實

Error CS2012 Cannot open 'C:\Users\myUserName\Documents\Visual Studio 2017\Projects\mySolutionFolder\myProjectFolder\obj\Debug\myExecutable.exe' for writing -- 'Access to the path 'C:\Users\myUserName\Documents\Visual Studio 2017\Projects\mySolutionFolder\myProjectFolder\obj\Debug\myExecutable.exe' is denied.'

然而,當我生成項目,它編譯罰款。一旦構建項目,解決方案構建不會引發任何錯誤。我在運行Visual Studio 2017

我試過什麼(沒有成功):

  1. 沒有在解決第二個項目,但我已經卸載它,它仍然錯誤。
  2. 我刪除了解決方案文件並讓Visual Studio創建了一個新文件。

附加信息: 錯誤是有點隨機的。通常它會出錯,但有時不會。在「清潔」和重建之間等待的時間越長,錯誤的機率就越小。即使在管理員模式下運行,也有同樣的問題。我開始認爲這是一個硬盤問題。

+1

您可以嘗試清理您的解決方案。這發生在我身上幾次。該過程也可能仍在運行。 - 使用taskkill /IM:myExecutable.exe/F/T –

+0

你有任何第三方插件(reshaper,...)或功能,如現場單元測試啓用?如果是這樣,請逐步禁用它們並檢查問題是否仍然存在。 – JanDotNet

+0

檢查'msbuild'或'dotnet'進程仍在運行並嘗試結束它。 –

回答

2

該應用程序仍在運行。

\ Debug \ myExecutable.exe'被拒絕。'告訴你,你不能取代它,因爲它目前是開放的。

打開任務管理器並確保您結束該過程,並且在此之後應該正常工作。

這通常是當我發生錯誤時發生在我身上的事情。

希望這會有所幫助

+1

作爲最後手段的方法:重新啓動計算機。有時,防病毒程序會搶到該文件的鉤子,永遠不會放棄它。非常討厭。 –

+0

我檢查了任務管理器,它沒有運行。 – Jeff

+1

拒絕訪問文件並不嚴格指示應用程序正在運行。它也可以是權限,或者某個進程將文件鎖定爲讀取或寫入。它也可以指示驅動器故障。 – Amy

相關問題