可能重複:
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