zoukankan      html  css  js  c++  java
  • 转 C# .NET4.0 混合模式程序集异常

    1.引用Microsoft.DirectX.dll和Microsoft.DirectX.Directsound.dll这2个文件。
    2.项目属性里边,把目标平台改成X86。
    3.App.Config修改下:

    1 <?xml version="1.0"?>
    2 <configuration>
    3     <startup useLegacyV2RuntimeActivationPolicy="true"> 
    4       <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
    5     </startup>
    6 </configuration>

          在.NET 4.0 下使用 Dirext3D 托管库,出现“混合模式程序集是针对“v1.1.4322”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。”异常信息,查看程序集Microsoft.DirectX.dll、Microsoft.DirectX.Direct3D.dll、Microsoft.DirectX.Direct3DX,发现其.NET 运行时版本时v1.1.4322,也就是说D3D托管库是在 .NET v1.1 版本下编译生成的。

          在.NET4.0以前,由于程序运行环境本质还是.NET2.0,并且.NET2.0兼容.NET1.0和1.1,但在升级到.NET4.0时,.NET的内核作了重大调整,以前在.Net2.0或.net3.5中生成的程序集,如果要在.net4.0下运行,需要在配置文件中指定此应用程序支持的公共语言运行时版本和启用 .NET Framework 2.0 运行时激活策略,相应的App.config如下:

    1 <?xml version="1.0"?>
    2 <configuration>
    3   <startup useLegacyV2RuntimeActivationPolicy="true">
    4     <supportedRuntime version="v4.0"/>
    5   </startup>
    6 </configuration>

    参考自MSDN,具体地址:http://msdn.microsoft.com/zh-cn/library/bbx34a2h.aspx

    转自:http://blog.csdn.net/shenyc/article/details/7872300

  • 相关阅读:
    Spring整合CXF之添加拦截器
    Spring整合CXF之发布WebService服务
    CXF添加自定义拦截器
    cxf处理一些Map等复杂类型
    webservice执行过程深入理解
    谈谈房车
    关于贷款消费
    记一次玩比特币的经历
    那年K城暑期工
    SpringBoot整合Xxl-Job
  • 原文地址:https://www.cnblogs.com/hongyu/p/4923524.html
Copyright © 2011-2022 走看看