VB to .NET Multi-Project Migration

ArtinSoft’s Visual Basic Upgrade Companion allows the conversion of multiple VB 6.0 projects in a single .NET migration solution. To make this happen, the Visual Basic Upgrade Companion features a boosted pre-processor environment and the Upgrade Manager.

During a VB to .NET migration, the Visual Basic Upgrade Companion performs a separation between the pre-processing and conversion stages in order to fix problems like the use of by-ref parameters, interfaces, renaming and typing among the different projects. The pre-processor environment solves the references among projects and simplifies the overall VB to .NET migration process, because those references included in the solution will be calculated and there will be no error messages or warnings about missing members.

The VB to .NET multi-project migration requires a preliminary stage to solve all the possible dependencies between the solution members and to create a common scope among all those items. This situation generates a series of details that needs to be considered by the Visual Basic Upgrade Companion to achieve an effective migration of the entire set of projects as a whole, and not as a series of independent conversions. The most critical details are:

  • References Resolution
  • Global Pre Processing
  • Interfaces
  • By-ref Parameters
  • Renaming
  • Typing
  • Shared files structure distribution

On the other hand, the Upgrade Wizard is able to convert only one VB6 project file (*.vbp) at a time. Hence, if the user wants to migrate a complex VB6 application with this tool, several considerations must be taken in order to accomplish full functional equivalence.

Multi-Project migration highlights:

References Resolution

Each reference is identified and classified (explicit, dynamic, internal, external, third party, and more) to identify possibly unresolved or conflictive items.

Global Pre-processing

This preliminary stage creates a common framework among all the projects to improve the VB to .NET migration of some particularities, such as:

  • Interface creation
  • By-ref parameter declarations
  • General Renaming
  • Object typing
  • Shared files and folders

Resulting Files Distribution

During a multiple project migration the file structure is managed to avoid duplications if a single file is referenced from several objects.