2014-07-22 269 views
0

我有一个供应商提供的dll 4.0框架和我在3.5上。供应商告诉我,该DLL暴露了COM界面,所以我仍然可以使用它。我有一个.dll和.tlb文件。在做了一些研究之后,我尝试了使用TlbImp,但它给了我一个错误。TlbImp不能正常工作

cmd TlbImp.exe myDll.dll表示它不是有效的类型库。
cmd TlbImp.exe myDll.tlb表示库是从CLR程序集中组装的,不能作为CLR程序集重新导入。

关于什么问题或者我可以用来希望访问C#08中的命令的其他方法的任何想法?谢谢!

+0

你们是不是在.NET 3.5的应用程序使用.NET 4的组成部分?我不明白COM/TLB的参与,你能澄清吗? – JohnD

+0

是的DLL是在.NET4中,但我试图在.NET 3.5应用程序中使用。根据供应商它应该仍然工作,因为它暴露了COM接口。从来没有这样做过,所以我不知道如何做到这一点。似乎TlbImp会建立一个我可以在.NET 3.5中使用的DLL,但不知道 – user3646105

+0

好吧,我明白了。你可能想去阅读这个答案:http://stackoverflow.com/questions/2382927/can-i-use-a-net-4-0-library-in-a-net-2-0-application - - 他们处于与你类似的状态。但是,我认为首选的方法是将您的应用升级到.NET 4.x,如果可以的话。 – JohnD

回答