Managed C++ - czy warto użyc w tym przypadku?

0

Witam,

Problem jest taki. Załóżmy, że mam bibliotekę dll napisaną w C (eksportuje tylko funkcje, nie klasy). Muszę użyć jej w projekcie C#, więc wymyśliłem sobie, że najlepiej będzie napisać wrappera. Byłoby to coś, co opakowuje wywołania funkcji w dll w metody i eventy potrzebne we właściwym projekcie.

Mam więc teraz do wyboru:

  • napisać całość w C# (dllimport i tłumaczenie nagłówków .h na C#, a będzie tego sporo)
  • stworzyć wrappera w C++/CLR. Wtedy bym mógł bezpośrednio użyć nagłówków dostarczonych z biblioteką.

Co jest lepsze? Wydaje mi się, że wybierając drugą możliwość zaoszczędzę sobie sporo niepotrzebnej roboty. Chociaż to nie takie pewne, bo z drugiej strony pisanie w C++ dla net jest dość upierdliwe, a jeszcze VS2010 nie obsługuje IntelliSence dla C++/CLR

Jak myślicie?

0

Jeżeli wrapper będzie pojemnościowo o wiele mniejszy od tych twoich nagłówków, to raczej tak. Jeżeli i tak i tak musisz je wyeksportować to nie ma to sensu IMO.

1 użytkowników online, w tym zalogowanych: 0, gości: 1