Personalmente cercherei di incapsulare lo strato C++ in un layer di conversione verso il .NET (per std::string puoi vedere qui: http://blogs.msdn.com/b/slippman/arc...02/147090.aspx) per non riscrivere tutto il codice. Occorre vedere, però, se il gioco vale la candela.