2009-02-22 25 views
23

Ho un sacco di librerie scritte in C++. Voglio chiamare queste librerie da C#, tuttavia, ho incontrato molti problemi. Voglio sapere se c'è un libro o delle linee guida per dirmi come farlo.Chiamare la libreria C++ in C#

+0

http://geeklit.blogspot.com/2006/08/calling-c-lib-from-c.html –

+0

Vedere http://stackoverflow.com/questions/569603/using-c-class-dll- in-c-applicazione – Richard

risposta

4

Recentemente ho avuto per avvolgere po 'di codice C++ in .NET. Sebbene il codice C++ fosse impacchettato come una DLL, l'interfaccia era troppo ostile per P/Invoke, così ho deciso di scriverlo in C++ gestito, o C++/CLI come è apparentemente noto ora.

Ho trovato this tutorial molto utile per la sintassi. Non è così facile per gli occhi, ma il contenuto è sembrato piuttosto buono.

3

Sono un grande fan del libro C++/CLI in Action, che ha un paio di capitoli di esempio utili on-line, a questo indirizzo.

Questo intro on CodeProject è un buon punto di partenza.

L'autore di C++/CLI in Action ha un numero di articoli su CodeProject, scorrere fino alla sezione C++/CLI su his index.

Il Wikipedia article on P/Invoke ha un certo numero di motivi per cui si potrebbe non si desidera utilizzare questo approccio, che condivido:

  • perdita del sostegno digitando dal compilatore
  • possibili tipi di dati o di allineamento di problemi, come si necessario mappare tipi mano
  • necessità di pin oggetti garbage collection

il punto di partenza è la MSDN summary article.