Вызов C # dll из C ++ - PullRequest
       32

Вызов C # dll из C ++

1 голос
/ 17 марта 2012

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

Теперь я прочитал, что вы можете превратить DLL вCOM-файл TLB, и я сделал это без проблем.Моя проблема заключается в C ++.Для вызова этого файла TLB мне нужно установить поддержку CLR.Я использую Фемиду, чтобы помочь защитить все мои DLL, а также PEC.Они не поддерживают .net DLL, и когда я включаю CLR, программы распознают его как .net DLL.

В любом случае можно ли вызвать функцию ac # внутри DLL .net изнутри собственной C ++ DLL без включения CLR

1 Ответ

3 голосов
/ 17 марта 2012

На мой взгляд, лучший способ - создать библиотеку C ++ / CLI, которую вы можете использовать для связи между уровнями.

Эта сторонняя библиотека будет скомпилирована с включенной / clr.

Затем вы можете использовать определения заголовков для соответствующих оболочек функций c ++ для вызова функций C #.

C ++ / CLI может помочь вам управлять вызовами именно так, как вы этого хотите, и позволить вам проектировать типы, как вы хотите.

...