Page tree

The default VB6 upgrades produced by gmStudio contain two kinds of code:
1) application logic and data structures produced by reading, interpreting, and rewriting your VB6 code.
2) stub classes that satisfy the VB6/COM dependencies that do not have a single direct functionally equivalent replacement in .NET.  The stub code generated by the tool corresponds to the specific needs of your VB6 application.

Typically the resulting system will not run very far using stubs; but it is still a solid starting point for beginning an upgrade project.  It is particularly useful in accomplishing the following: get a clean, complete baseline translation of the application logic, get it to build in Visual Studio, and then re-engineer it along with some rework to produce functionally correct, maintainable C# code.

In order to make the generated application run, the stub classes must be replaced with functional implementations.  This can be done by finishing the stubs by hand, or by configuring the tool to rewrite the application logic to use some other new or existing functional .NET classes (Microsoft .NET assemblies, COM-interop assemblies, third-party assemblies, other in-house assemblies, etc.).  

If you are considering the "finish the stubs by hand" option, you would benefit by using our implementation of the stubs.  This is the MigrationSupport.dll assembly that is distributed with gmStudio.  This assembly implements many VB6 intrinsic objects and methods as well as a replacement for the ADODB API using System.Data and SqlClient classes. You can see our MigrationSupport API at work in our standard samples here:

More information on the runtime support library is in this article.


  • No labels