Могу ли я использовать как C #, так и C ++ / CLI в одной сборке? - PullRequest
10 голосов
/ 19 мая 2010

Могу ли я собрать исходные файлы C # и C ++ / CLI в одном проекте, а затем скомпилировать их для получения одной сборки .DLL?

1 Ответ

6 голосов
/ 19 мая 2010

Вы можете получить одну DLL из кода как в c ++ / cli, так и в c #, используя инструменты командной строки. Предположим, у вас есть два файла: A.cc с кодом C ++ / CLI и B.cs с кодом C #. Это должно выглядеть примерно так:

  • Первая компиляция кода C ++ в файл .obj cl.exe /MD /c /clr A.cc
  • Скомпилируйте код c # в "module", добавив ранее созданный .obj с ключом / addmodule: csc.exe /target:module /addmodule:A.obj B.cs
  • Затем свяжите модуль в одну DLL: link.exe /DLL /LTCG /NOENTRY /CLRIMAGETYPE:IJW A.obj B.netmodule

Я не проверял его, но он должен работать.

...