2010-12-21 72 views
0

我刚刚收到一个同事的请求,以解决为什么无法添加特定的DLL作为参考在Visual Studio 2008版本9.0.21022.8 RTM与MS .Net框架版本3.5 SP1。添加非“类型库”dll作为参考VS C++ 2008

使用的语言是Visual C++ 2008,我从来没有做过这个语言的任何东西,虽然我已经做了之前C#有点...

请检查下面的两个错误信息,第一个是从哪里来的我的笔记本电脑,第二个从我的同事的: my error message

another error message

我从谷歌的研究恐怕目标DLL是:

  • 不是类型库。

    tlbimp C:\test\tm1api.dll 
    
    ...... 
    
    error TI0000 : The input file 'C:\test\tm1api.dll' is not a valid type library 
    

    这是什么意思,什么将其转换为一个类型库:通过运行TLBIMP工具确认了吗?

  • 不是.NET程序集或注册的ActiveX控件。恐怕没有在VS编程的DLL。但我怎么能验证这一点?

基本上我很困惑,因为两个VS 2008显示不同的错误信息,这个问题只针对VS 2008吗?或者VS有这样的一个通用解决方案吗?

非常感谢提前的帮助。

回答

1

你可能只有一个普通的老dll。使用dllimport来访问它的方法。请注意,与C++ dll交互时,通常存在各种数据编组问题,而不是int,您可能需要使用short,IntPtr而不是数组......像这样的东西。