导入C ++ DLL的工具

时间:2010-03-10 11:28:48

标签: c# dll dllimport

我的公司使用定期更新的第三方C ++ DLL。我一直在手动创建C#DLLImport语句,但在最后一次更新中,函数数量几乎翻了一番。是否有任何工具(最好是免费的)可以从非托管的C ++ .dll或.lib文件创建C#DLLImport? (DLL导出修饰的C ++函数,而不是C ++类。)

3 个答案:

答案 0 :(得分:2)

Microsoft的Managed,Native和COM Interop团队在Codeplex上提供了一些工具,其中包括一个名为

的工具
  

<强> P/Invoke Interop Assistant

我自己没有尝试过,但它看起来好像可以做你想要的。

答案 1 :(得分:0)

据我所知,这样的工具不存在。您必须自己为每个函数编写P / Invoke声明。我认为它也是一样,因为C ++函数通常充满了细微之处,包括输入/​​输出上下文,c风格的字符串,c风格的数组,指针,引用和什么不是。很多时候,预期的输入/输出只能用文档表示,工具不可能为函数输出正确的编组声明。

答案 2 :(得分:-1)

我会写一个C ++ / CLI包装器。