2010-05-25 45 views
0

我的問題是非常相似:VB.Net項目顯示了在VS2010清潔錯誤

http://www.dotnetmonster.com/Uwe/Forum.aspx/dotnet-vb/54944/VB-Net-project-throwing-errors-when-executing-Clean-Solution

  1. 典型錯誤:無法加載沒有定義X
  2. 類型IWshRuntimeLibrary.WshShell引用的庫。
  3. 接口System.IDisposable不由此類實現。
  4. Imports Z中指定的類型的名稱空間不包含任何公共成員或無法找到。確保導入的元素名稱不使用任何別名。

這必須與VB.net項目配置有關。目前有一個設置「將所有警告視爲錯誤」。我想保持這種設置,但也要解決這些煩人的「錯誤」。

回答

1

我已經經歷了類似的問題,並通過在VS命令行工具運行以下命令固定它通過的MSBuild在VS2008執行清潔的

devenv /resetskippkgs 
+0

你細說嗎?有沒有辦法通過GUI IDE設置這個標誌?它有什麼作用? – 2010-05-25 15:14:53

+0

從MSDN:「清除所有選項以跳過加載添加到VSPackages的用戶希望避免加載問題VSPackages,然後啓動Visual Studio」。 我不確定是什麼導致了這個問題,但是當我無緣無故地發現錯誤時,該命令修復了它。請讓我知道這對你有沒有用。 – Laplace 2010-05-25 15:32:54

1

I'ev有問題,當項目被註冊爲COM Interop 。

問題是爲解決方案自動生成的「清潔」目標按照與其生成相同的順序清除項目。

這會導致在MSBuild嘗試加載並在「Clean」期間從COM註銷程序集時爲COM註冊的項目出現問題。如果程序集對另一個項目具有依賴關係,則會出現問題,因爲首先會刪除依賴項,因此加載程序集將失敗,並且MSBuild將無法取消註冊。

解決方法是更改​​解決方案.cache文件(其中包含MSBuild在「構建」期間自動生成的目標),並顛倒「清理」目標的順序。我將一個快速修復的自定義構建任務作爲一個後期構建步驟進行了黑客攻擊。

不知道,如果這個固定在VS2010或事實上,如果這符合你的問題,因爲你不給你的問題很多細節;)