C#编写的代码属于跨平台的托管代码,C++语言可以编写托管(managed)和非托管(native)代码。在C#与C++的混合编程中,经常会使用C#来调用native C++的DLL,下面有两种常用的调用方法供大家参考。
-
使用P/Invoke直接调用native C++ Dll里面的函数。(注:此方法只能调用函数,不能调用class)。
-
C#通过C++ CLR(托管的C++)来调用nativeC++ DLL, C++ CLR作为链接C#与native之间的纽带。
方法一的详细过程如下:
-
(1)打开VS2015,新建C++ win32项目,过程如下图: