可能重复:
Using C++ Class DLL in C# Application如何在c#项目中使用C++ dll?
我尝试无法添加引用添加C++ DLL在C#
,如果您有任何其他方法,以在添加或使用C++ DLL C#。我们如何使用?
我在哪里错误地添加DLL在我的C#项目?
在此先感谢
可能重复:
Using C++ Class DLL in C# Application如何在c#项目中使用C++ dll?
我尝试无法添加引用添加C++ DLL在C#
,如果您有任何其他方法,以在添加或使用C++ DLL C#。我们如何使用?
我在哪里错误地添加DLL在我的C#项目?
在此先感谢
您不添加对C++库的引用,仅适用于.NET程序集。你需要的是使用P/Invoke的平台互操作。 MSDN这里有一堆的信息: -
http://msdn.microsoft.com/en-us/library/aa288468(VS.71).aspx
这基本上意味着你必须编写调用导出的函数外部库方法存根。
还有C++/CLI方式可以更好的取决于您的C++项目设置,但是我个人更喜欢传统的Windows API函数导出方式。
对于在C#中使用本地C++库,您大多将不得不为此创建一个C++/CLI包装。只要您的DLL的API包含简单的类似C的函数,P/Invoke就可以,但是当API包含真正的C++类时,C++/CLI对于该任务来说更好。
另一个很好的资源是http://en.wikipedia.org/wiki/Platform_Invocation_Services和http://pinvoke.net/ – Vamsi 2011-10-17 12:38:49