how to use c++ dll in c# project?

17,020

Solution 1

For using native C++ libraries in C#, you mostly will have to create a C++/CLI wrapper for that. P/Invoke is ok as long as the API of your DLL contains just simple C-like functions, but when the API contains real C++ classes, C++/CLI ist much better for that task.

Solution 2

You don't add a reference to a C++ library, that's for .NET assemblies only. What you need is platform interop using P/Invoke. MSDN has a bunch of information here:-

http://msdn.microsoft.com/en-us/library/aa288468(VS.71).aspx

It basically means you have to write method stubs that call your exported functions in the external library.

There is also the C++/CLI way which can be better depending on your C++ project setup, but personally I prefer the traditional Windows API function export way.

Share:
17,020
Ashwin
Author by

Ashwin

Software and web developer

Updated on June 05, 2022

Comments

  • Ashwin
    Ashwin almost 2 years

    Possible Duplicate:
    Using C++ Class DLL in C# Application

    I try to failed to add reference to add c++ dll in c#

    if you have any other method to add or use c++ dll in c#. how can we use?

    Where do i mistake to add dll in my c# project?

    Thanks in advance