C#2.0开发的dll如何调用C#40开发的dll,求高人!

nicholaskj 2010-04-17 09:30:59
主程序是别人开发的(exe),允许加载.net2.0/3.5的dll,但是加载4.0的dll报错
LoadFrom报错:
Could not load file or assembly 'file:///E:\MyDocuments\Visual Studio 2010\Projects\NX6_Open_CS_Wizard1\TestC\bin\Debug\TestC.dll' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.
Assembly.LoadFile报错:
ex = {"This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded. (Exception from HRESULT: 0x8013101B)"}

我现在已经实现了.net2.0/3.5的exe调用4.0的dll,使用配置文件,指定
<configuration>
...
<startup>
<requiredRuntime version="4.0.30319" safemode="true"/>
</startup>
...
</configuration>

因为只能开发dll调用,问题就来了。主要问题是.net2.0/3.5的dll不能使用配置
它不能引用4.0的dll,用反射调用就说运行时库比现在的高
用COM说不能引用
至于CLR HostAPI,实在有点麻烦

但是我真的很想实现对4.0的dll的调用,应为这个dll不是我写的,没有代码(混淆过)。

我想问问高人,这种情况下能否使用AppDomain应用程序域?
应用程序域可不可以加载配置文件,调用4.0的dll?

真的真的很想实现这个调用!

...全文
177 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayonglong 2010-04-17
  • 打赏
  • 举报
回复
不行的~
honkerhero 2010-04-17
  • 打赏
  • 举报
回复
把2.0和3.5写的程序升级到4.0吧,only this way
ToMakeLove 2010-04-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 linux7985 的回复:]
这个应该不行吧,4.0的代码。在2.0的环境里怎么跑,不支持的代码,如何运行
[/Quote]
恩恩
烈火蜓蜻 2010-04-17
  • 打赏
  • 举报
回复
这个应该不行吧,4.0的代码。在2.0的环境里怎么跑,不支持的代码,如何运行

110,547

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧