[C#] Использование библиотеки DLL C ++ в приложении C #



Answers

Этот ответ может быть излишним для одной библиотеки классов, но SWIG является хорошим решением для «обертывания» классов C / C ++ для использования с других языков. Он хорошо работает с C #.

См. .

Question

У меня есть неуправляемая C ++ DLL, которая просто экспортирует один класс (а не COM ... это просто класс C ++) в качестве своего интерфейса. Я хочу использовать этот класс в C #, но мне сказали, что его нельзя просто импортировать в C #.

Каков правильный способ использования этого класса в моем приложении C #?




Для преодоления управляемой / неуправляемой границы вам нужен посредник прокси (GoF pattern).

Два варианта:

  • Обертка C ++ / CLI
  • Оболочка COM.

Первый будет более прямым, а второй - чистым C ++ -> COM -> .NET.






Links