I work on a large code base with a large install base of users. The code was originally written in vb6 with a few c++ COM modules for low level work.
It is completely infeasible to rewrite all of the code that is already written in vb6 and is being used by our customers every day, but we are also continuing to make improvements and customizations to the software (large and small).
My solution so far is to write most of the new code in c# (winforms and even wpf now) and then use COM interop to call the modules from vb6.
Does anyone out there have experience with long term software suites like this (10+ years) that can't be stopped for a complete rewrite, but need continual new development at the same time. Also, in mixed systems like this, what is the best way to interface the modules? I am using COM right now, but have considered IPC with separate processes as well.