如何在c#中动态加载正确版本的第三方非托管控件

时间:2016-05-23 08:45:49

标签: c# load version unmanaged tlb

我的应用是c#插入第三方非托管应用。我有一个窗口表单,其中一个控件(AxInterop)取决于他们的一个非托管dll。他们2015版的同一控件依赖于不同的类型库文件(例如,abc.tlb现在是123.tlb),但它们都支持相同的接口。

我不想创建单独的构建。

如何让我的代码在早期版本中使用ABC.tlb并在2015版本中使用123.tlb?

你可以在启动时加载像程序集这样的tlb文件吗?

感谢

1 个答案:

答案 0 :(得分:0)

好吧,毕竟用动力学解决了它。 AxInterop控件是一个红鲱鱼。该控件具有属于2015年更改类型的属性。我使用dynamic从第三方的工作空间对象中获取属性,然后将该属性设置为该值。我的项目没有引用ABC或123。