Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12839120
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: C#/.net

2014-02-25 01:05:26

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

 在.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如下

[html] view plaincopy
  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>  

这段配置节的意思是(参考自MSDN,具体地址:)

阅读(2480) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~