This chapter has covered the phases required for migrating Visual Basic 6.0 applications to Visual Basic .NET. The first phase for the migration is the assessment phase that helps the developers decide whether to migrate the application to .NET or to leave it in Visual Basic 6.0.
Once the decision to migrate the application has been made, premigration changes are done in the Visual Basic 6.0 application. The chapter has covered the key differences in the language and syntax of Visual Basic 6.0 and Visual Basic .NET. It has also covered the differences in the data types of these two languages. There are certain changes that can be made in the Visual Basic 6.0 application to smooth the upgrade to Visual Basic .NET. These changes are known as pre-migration recommendations. They are not mandatory, and developers can directly upgrade their Visual Basic 6.0 applications using the upgrade wizard. However, if developers follow the premigration recommendations, the actual changes that need to be done to the upgraded Visual Basic .NET application are reduced to some extent.
After the pre-migration changes, the application is upgraded to Visual Basic .NET with the help of the upgrade wizard. Microsoft has provided an upgrade wizard as part of the Visual Studio .NET IDE. This wizard leaves a copy of the original Visual Basic 6.0 application and upgrades the application into Visual Basic .NET application in a new directory. The wizard makes all the necessary syntax changes. The Visual Basic 6.0 Forms and controls are upgraded into the proper Windows Forms and controls in Visual Basic .NET. However, there are many features in Visual Basic 6.0 applications that are not upgraded by the wizard. This is primarily due to the very significant differences in the syntax and the architecture between Visual Basic 6.0 and Visual Basic .NET. The upgrade wizard provides a good starting point for the migration because it upgrades the basic features of the Visual Basic 6.0 application.
Post-migration changes have to be done in Visual Basic .NET code to make it work in the Microsoft .NET environment based on the issues identified in the upgrade report. These changes are covered in detail in the next chapter.