Call C++ - Bibliothek in C#


23

Ich habe viele Bibliotheken in C++ geschrieben. Ich möchte diese Bibliotheken aus C# aufrufen, jedoch habe ich viele Probleme kennengelernt. Ich möchte wissen, ob es ein Buch oder eine Richtlinie gibt, um mir zu sagen, wie ich das mache.

  0

Siehe http://stackoverflow.com/questions/569603/using-c-class-dll- In-c-Anwendung 22 feb. 092009-02-22 12:37:13

4

Ich hatte vor kurzem einige C++ Code in .NET zu wickeln. Obwohl der C++ - Code als DLL verpackt war, war die Schnittstelle für P/Invoke zu unfreundlich, daher entschied ich mich, sie in verwaltetes C++ oder C++/CLI zu schreiben, wie es jetzt anscheinend bekannt ist.

Ich fand this tutorial sehr nützlich für die Syntax. Es ist nicht so einfach für das Auge, aber der Inhalt schien ziemlich gut zu sein.


6

Wenn Sie google "C++ C# interop", finden Sie Tonnen von Informationen zu diesem Thema.

Ein paar Links:

http://msdn.microsoft.com/en-us/magazine/cc301501.aspx
http://msdn.microsoft.com/en-us/library/ms235281(VS.80).aspx


3

ich ein großer Fan des Buches bin C++/CLI in Action, die online unter dieser Adresse, ein paar nützliche Beispielkapitel hat.

Diese intro on CodeProject ist ein guter Ausgangspunkt.

Der Autor von C++/CLI in Action hat eine Reihe von Artikeln über CodeProject, scrollen Sie bis zum C++/CLI-Abschnitt auf his index.

Die Wikipedia article on P/Invoke hat eine Reihe von Gründen, warum Sie vielleicht nicht wollen, diesen Ansatz verwenden, mit denen ich zustimme:

  • Verlust der Eingabe Unterstützung durch den Compiler
  • möglich Datentyp oder Ausrichtungsprobleme, wie Sie haben Typen zur Karte von Hand
  • Notwendigkeit Garbage Collection Objekte

der beste Ausgangspunkt auf MSDN an Pin ist die summary article.