migrating from c++

marvinm
marvinm used Ask the Experts™
on
we have a fairly sizeable application (3 million + lines of code) in C++ / win32 api compiled into a single exe.  We also have several of our own custom and 3rd party libraries and dll's mixed in.  There are many features of c# that we would like to take advantage of.  Is this possible without rewriting our entire application (something that is not going to happen)?  
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Commented:
Well, C# does have the ability to create .dlls that are compatible with COM, if you are looking to rewrite some of the external .dlls then you can probably do that in c#, and would have to change some references to point to the new C# ones.

I don't think that it's usercontrols would interact very nicely with the existing C++ code, and I doubt that you can write subsets of your GUI in C#.  But you probably can use it for backend work if you like.

I'm not the end-all be-all resource on it, though, so don't take it as an absolute negative.
Commented:


I guess it depends on what C# functionality you want to take advantage of.

I suppose you could create C# dlls and then have your C++ program use them, but I don't know of any functionality in C# that can't be done in C++.  With the exception of Garbage collection, but .Net garbage collection only works on managed code (code written in a .Net language), garbage collection does NOT work on unmanaged code (code written in anything other than a .net language).


What kinds of functionality do you want to take advantage of?

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial