If write an application using Visual.NET, will it run on a machine that doesn't have the .NET framework installed? Also, how easy is it to take legacy VB and C++ code and import the projects into Visual .NET and compile them? Is it better to rewrite?
This question gets asked a lot ... in fact I gave a lengthy explanation about this issue in a previous Ask The Expert tip. And although I can't comment on C++, it is easy to take Visual Basic code and import it into Visual Studio.NET. You can simply open the project as you would in Visual Basic 6.0. When you do, an Upgrade Wizard appears to walk you through the process. The Upgrade Wizard will make changes in much of your code to make it .NET compliant and save it into a new project so that your original source code will not be changed.
However, this process will only get you 60% to 90% of the way there, depending on the quality of your code. The Upgrade Wizard produces a report of To Do items that you will need to manually address.
Is it better to re-write? That depends on your project. If you are dependent on many third-party controls, COM+ components, etc. then you will probably want to re-write to take advantage of .NET's features and move away from "unmanaged" code.