建立本地C ++用作.NET库(Build native c++ for use as .net l

2019-08-05 13:47发布

我有这是吸引我的功能C ++源代码。

什么功夫/工作参与/从.NET应用程序,以任一所需的参考这个或建立这个代码为.NET组件(优选C#)?

这是我在移植代码的第一次尝试,所以请击穿你的答案,我一步一步来。

Answer 1:

有这样做的几种方法。

  1. 的PInvoke
  2. 围绕你的C创建C ++ / CLI包装++本机代码(使静态库出来的C ++本地代码)和C ++ / CLI生成组件可在.NET应用程序可以容易地利用。
  3. COM,即使用互操作(这是很难的所有选项中)

在我的建议最简单的方法是使用选项2,但你需要采取适当的编组的照顾。



Answer 2:

溶液A:

  1. 如果你的源代码,然后编译CPP程序作为一个DLL文件。
  2. 使用的P / Invoke

方案B(如果你想要的功能在静态库):

  1. 创建一个存根函数调用器和编译为一个DLL
  2. 相同的解决方案A.2


文章来源: Build native c++ for use as .net library