Appelez la bibliothèque C++ en C#


23

J'ai beaucoup de bibliothèques écrites en C++. Je veux appeler ces bibliothèques de C#, cependant, j'ai rencontré beaucoup de problèmes. Je veux savoir s'il y a un livre ou une directive pour me dire comment faire cela.

  0

Voir http://stackoverflow.com/questions/569603/using-c-class-dll- In-c-application 22 févr.. 092009-02-22 12:37:13

4

J'ai eu récemment pour envelopper un peu C++ le code .NET. Bien que le code C++ ait été empaqueté en tant que dll, l'interface était trop hostile pour P/Invoke, j'ai donc décidé de l'écrire en C++ géré, ou C++/CLI comme il est apparemment connu maintenant. Je trouve this tutorial très utile sur la syntaxe. Ce n'est pas si facile à regarder, mais le contenu semblait plutôt bon.


6

Si vous allez sur "C++ C# interop", vous trouverez des tonnes d'informations sur ce sujet.

Quelques liens:

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


3

Je suis un grand fan du livre C++/CLI in Action qui a deux ou trois chapitres d'échantillons utiles en ligne, à cette adresse. Ce numéro intro on CodeProject est un bon point de départ.

L'auteur de C++/CLI en action a un certain nombre d'articles sur CodeProject, faites défiler jusqu'à la section C++/CLI sur his index.

Le Wikipedia article on P/Invoke a un certain nombre de raisons pour lesquelles vous voudrez peut-être de ne pas utiliser cette approche, avec laquelle je suis d'accord:

  • perte de frappe support par le compilateur
  • type de données possibles ou des problèmes d'alignement que vous doivent cartographier les types de besoin la main
  • à la broche objets collectés-ordures

le meilleur point de départ sur MSDN est le summary article.