Вы можете получить одну 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
Я не проверял его, но он должен работать.