10

Can I put together both C# and C++/CLI source files in a single project, and then compile them to obtain a single .DLL assembly?

Martin
  • 37,119
  • 15
  • 73
  • 82
Meh
  • 7,016
  • 10
  • 53
  • 76
  • In theory they're both converted to MSIL, it *should be possible* but i'm unsure how you would go about it. – Aren May 18 '10 at 20:47

1 Answers1

6

You can obtain single DLL from code both in c++/cli and c# using command line tools. Let's assume you have two files: A.cc with C++/CLI code and B.cs with C# code. It should look something like this:

  • First compile c++ code into .obj file cl.exe /MD /c /clr A.cc
  • Compile c# code into "module" adding previously created .obj with /addmodule switch: csc.exe /target:module /addmodule:A.obj B.cs
  • Then link the module into single DLL: link.exe /DLL /LTCG /NOENTRY /CLRIMAGETYPE:IJW A.obj B.netmodule

I haven't tested it but it should work.

piotrsz
  • 1,132
  • 8
  • 12