2009-02-22 5 views
23

Mam wiele bibliotek napisanych w C++. Chcę wywoływać te biblioteki z C#, jednak napotkałem wiele problemów. Chcę wiedzieć, czy istnieje książka lub wytyczne, które powiedzą mi, jak to zrobić.Wywołanie biblioteki C++ w języku C#

+0

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

+0

Zobacz http://stackoverflow.com/questions/569603/using-c-class-dll- w aplikacji c – Richard

Odpowiedz

4

Niedawno miałem owinąć trochę kodu C++ .NET. Chociaż kod C++ został spakowany jako biblioteka dll, interfejs był zbyt nieprzyjazny dla P/Invoke, więc postanowiłem napisać go w zarządzanym C++ lub C++/CLI, ponieważ jest on obecnie znany.

Znalazłem this tutorial bardzo przydatne w składni. To nie jest łatwe dla oka, ale treść wydawała się całkiem dobra.

3

Jestem wielkim fanem książki C++/CLI in Action który ma kilka przydatnych przykładowych rozdziałów online pod tym adresem.

Ten intro on CodeProject jest dobrym punktem wyjścia.

Autor C++/CLI w akcji ma wiele artykułów o CodeProject, przewiń w dół do sekcji C++/CLI na his index.

Wikipedia article on P/Invoke ma wiele powodów, dlaczego nie chcą korzystać z tego podejścia, z którymi się zgadzam:

  • utratę poparcia wpisując przez kompilator
  • ewentualne problemy typu danych lub strojenia, jak ty mają do mapowania typów ręcznie
  • potrzebę pin śmieci zgromadzone obiekty

najlepszym punktem wyjścia na MSDN jest summary article.