At most, it means writing all projects from scratch, using your existing code just as the reference.
However, if your C++ code is really well written, different aspect of it are well isolated from each other (especially from UI which you will need to throw out anyway), you have some chance for a compromise which will allow you to reuse big part of your C++ native code. This can be done by putting this code into the mixed-mode (managed + unmanages) code written in C++/CLI. This language provides unique capability to combine native and CLI code, even in the same executable module. You can wrap your native classes in CLI "ref" classes and compile your project into the normal .NET assembly which could be used as any other assembly, referenced in other assemblies. Please see:
http://en.wikipedia.org/wiki/C%2B%2B/CLI[
^],
http://www.ecma-international.org/publications/standards/Ecma-372.htm[
^],
http://www.gotw.ca/publications/C++CLIRationale.pdf[
^],
http://msdn.microsoft.com/en-us/library/xey702bw.aspx[
^].
—SA