Каковы мои варианты для C ++ DLL для вызова C # DLL? - PullRequest
2 голосов
/ 09 июня 2009

У меня есть C ++ DLL, которая должна вызывать функцию (передать значение, вернуть значение) в библиотеке классов C #.

Является ли мой единственный вариант дать C # DLL интерфейс COM и вызывать его из C ++ с помощью IDispatch?

Это лучший метод?

Ответы [ 4 ]

5 голосов
/ 09 июня 2009

Несколько вариантов доступны для вас здесь

  1. Использование сборки C ++ / CLI в смешанном режиме в качестве моста между C ++ и C # DLL
  2. Используйте мост COM, выставив несколько ключевых типов C # в качестве объектов COM. Затем к этому можно получить доступ через код C ++ с помощью обычной семантики COM
1 голос
/ 22 сентября 2011

Этот проект Создает экспорт dll для статических методов в классах. Затем вы можете вызвать статический метод C # из неуправляемого кода.

0 голосов
/ 09 июня 2009

Это не опция только .

Вы также можете скомпилировать свою C ++ DLL как управляемую DLL.

Вы можете разместить свою C # DLL как службу и удаленно в нее.

0 голосов
/ 09 июня 2009

Один из подходов, который сработал бы, это назвать его через COM. Вы можете использовать инструмент Regasm для создания оболочки COM.

...