有没有办法让托管dll在托管COM服务器中调用函数?

时间:2011-01-19 23:03:12

标签: com interop

我有.net 3.5 dll和.net 4.0 dll。 .net 3.5 dll需要调用.net 4.0 dll中的一些函数。为此,我将4.0 .net dll作为COM服务器。但是,我不能tlbimp从4.0 dll导出的tlb文件。 .net DLL是否可以从.net COM服务器调用函数?感谢。

1 个答案:

答案 0 :(得分:0)

如果可能,您应该将3.5升级到4.0或将4.0降级到3.5 / 2.0,这样您就可以正确添加托管引用。

如果您不能这样做,另一种方法是复制声明并用[ComImport]替换[ComVisible(true)] - 但是这可能会在早于4.0的运行时上因类型转换异常而失败。我不知道当3.5与4.0谈话时它是否有效,你必须进行测试。