我在這裏包含了一個包含在這裏(答案2)的c#.net 4.0應用程序中的directX播放器。問題是,當我嘗試初始化對象(即Player mPlayer = new Player())時,會發生此錯誤:混合模式程序集是針對版本'v1.1.4322'構建的
混合模式程序集針對運行時版本「v1.1.4322」構建,無法在4.0運行時沒有額外的配置信息。
任何人都知道它可能是什麼?
我在這裏包含了一個包含在這裏(答案2)的c#.net 4.0應用程序中的directX播放器。問題是,當我嘗試初始化對象(即Player mPlayer = new Player())時,會發生此錯誤:混合模式程序集是針對版本'v1.1.4322'構建的
混合模式程序集針對運行時版本「v1.1.4322」構建,無法在4.0運行時沒有額外的配置信息。
任何人都知道它可能是什麼?
您需要添加一個app.Config文件並將useLegacyV2RuntimeActivationPolicy
設置爲true。
這是在.NET 4應用程序中使用混合模式CLR 2程序集所必需的。
我固定此錯誤的方法是通過從該改變在我的的app.config「配置」節點:
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
這樣:
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
感謝您爲我們這些未修改app.config xml文件的人們進一步澄清,以瞭解如何將該值設置爲true。 +1 – Jack 2013-01-01 01:29:53
我的榮幸,傑克。那時候,我不得不自己去尋找那個,所以我想到那裏有人可以使用額外的信息以及:) – 2013-01-07 04:54:39
謝謝Gustavo – 2016-03-02 08:50:08
下面是可能的組裝配置:
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>
重要提示:如果錯誤發生在錯誤列「File」爲'SGEN',那麼t他修復需要在'sgen.exe.'旁邊的'sgen.exe.config'文件中。例如,對於VS 2015,創建'C:\ Program Files文件(x86)\ Microsoft SDKs \ Windows \ v10.0A \ bin \ NETFX 4.6 Tools \ sgen.exe.config'。資料來源:[SGEN混合模式程序集](https://support.microsoft.com/en-us/help/2572158/sgen-mixed-mode-assembly-is-built-against-version-v2-0-50727-of -the-ru)最小文件內容:' configuration>' –
ToolmakerSteve
2017-10-06 01:19:46