2011-09-12 42 views
1

我轉換一個項目從VS2008到VS2010針對性的.NET版本,現在我在運行時得到:如何更改我的混合模式組裝

未處理的異常:System.IO.FileLoadException:混合模式程序集是針對運行時版本「v2.0.50727」構建的,無需其他配置信息即可在4.0運行時加載。

谷歌搜索的錯誤,似乎你可以強制與舊組件的兼容性,但是這不是我想要的東西 - 我想建立對4.0運行時違規項目。顯然,Visual Studio項目轉換向導沒有這樣做?

這是一個託管的C++項目。如何更改目標.NET版本?

+0

這很奇怪,在轉換項目之後它應該總是以4.0爲目標。用記事本打開.vcxproj文件並查找''。如果有,請將其刪除。 –

+0

將所有從* proj中移除;仍然沒有骰子 – jrr

回答

0

好的,明白了,愚蠢的錯誤:我有一個老版本的.DLL坐在與.exe相同的目錄中。修改了構建配置,將當前的(v4.0)複製到那裏。一切都好。

0

我認爲該消息表明項目引用或包含的是.NET Framework V2而不是V4。

  1. 檢查該項目的目標是項目屬性中的.NET Framework版本4。

  2. 將項目中引用的.NET Framework V2程序集替換爲面向.NET Framework V4的版本。

希望這能解決您的問題。

+0

每個項目(C#應用程序,託管的C + + DLL,原生C++ .lib)說:「目標框架:.NETFramework,版本4.0」。我在哪裏尋找引用的程序集? – jrr