About Visual Basic Upgrade Companion

Migrate your VB6 code to C# or VB.NET.

Visual Basic Upgrade Companion (VBUC) is a VB 6.0 to C# or VB.NET migration tool that accelerates the code conversion process. This advanced tool provides a cost-effective solution that features ADO to ADO.NET conversion, variable type resolution ("late binding" problem), error handling replacement, use of .NET native libraries, code refactoring, third party component mappings, migration of mixed VB6 and ASP projects, multi-project upgrade support, and much more. VBUC reduces the amount of manual coding and generates a native .NET application that is equivalent to the original VB6 system.

Better than a rewrite. Preserves your code investment. Used by millions of developers.
The Visual Basic Upgrade Companion (VBUC) converts your VB6 code to C# and VB.NET. Endorsed by Microsoft, VBUC generates 100% native code without third party runtimes and dependencies.

Why use Visual Basic Upgrade Companion?
Visual Basic Upgrade Companion (VBUC) is an industry-leading tool for migrating Visual Basic 6 to Visual Basic .NET and C#. With a proven track record of billions of lines of code upgraded to Microsoft’s .NET Framework, VBUC helps you move your business critical applications out of obsolescence, free of ties to third-party dependencies.

If you want to take advantage of new Microsoft technologies, reduce development, deployment and maintenance costs, and address compliance issues and meet market demands, VBUC is one of the most advanced and cost-effective solutions available.

What Makes VBUC So Good?

  • It's better than a manual rewrite. You'll achieve an 80% savings in money and time.
  • You get to preserve your code investments. VBUC is a non-disruptive, automated tool that preserves all of the business rules embedded in your code.
  • You get 100% native code. VBUC generates native C# and VB.NET code with no ties to proprietary runtimes. Code generated by VBUC is easy to maintain and update.
  • Customize the tool. You can add support for additional legacy components and you can also extend the tool to comply with your coding standards, plus much more.

Visual Basic Upgrade Companion Key Features:

Code generation

  • C# or VB.NET - VBUC allows you to upgrade Visual Basic 6.0 source code directly to either VB.NET or C#.
  • Language Transformations - VBUC performs the most advanced language transformations to generate pure, clean and readable .NET source code enabling you to take advantage of its inherent features.
  • Advanced Code Refactoring - VBUC applies additional transformation rules to generate code that looks as if it was originally written in .NET.
  • Reference Resolution Between Projects - Save time, human effort and money by easily upgrading multi-project, complex applications in a single run.
  • Error Handling Transformation - Eliminate the "On error" and "Go to" statements from your .NET code with just a single click.
  • Resolve Late Bound Variable Types - All the data-type issues and annoyances are automatically fixed during the automated migration stage. Late binding variables will no longer have generic data types.


  • Switchable Migration Options - Specific transformation techniques can be set through switchable options that are displayed in a Profile Manager window. You can save different upgrade profiles, so that you can establish the most appropriate code conversion rules and component mappings for a specific migration process.
  • Customization and Extensibility - All the specific code techniques and patterns found in your code can be described in the Visual Basic Upgrade Companion's core, including the ability to add or fine-tune existing support for ActiveX controls and libraries.
  • Support for Additional Customizations - Mobilize.Net can add customizations to the VBUC's migration engine at the users' request. This powerful approach allows highly detailed transformations into the resulting source code, ranging from adding support for a particular non supported legacy control to its .NET counterpart with specific member handling, to defining special handling techniques for complex language patterns to be converted into optimized .NET constructions and so forth.

Component migration

  • Third Party Library Support - The Visual Basic Upgrade Companion is able to upgrade many ActiveX controls found in the original application to inherent .NET components or to newer versions of third-party controls.
  • Legacy Data Access to ADO.NET - Upgrade data access to ADO.NET automatically with several source-target combination possibilities.

Additional features

  • User Environment - Visual Basic Upgrade Companion has an intuitive UI (Upgrade Manager) and Command Line interface designed to make it very easy for you to use the tool.
  • Windows API Support Forget the manual changes required after upgrading the Windows API calls and other external dlls calls to.NET.
  • ASP/VB6 Migration Support - Visual Basic Upgrade Companion allows the migration of mixed ASP and VB6 projects to ASP.NET and VB.NET or C# by seamlessly integrating with the ASP Upgrade Companion.
  • Free Source Code Helper Classes - Royalty-free .NET source code without most post-migration issues created by the vast amount of differences between VB6 and .NET.
  • COM Class Exposure - Access your newly generated .NET projects from your "upgrade-pending" legacy controls through COM.
  • Localization and internationalization (Multilanguage) - The UI and all messages, including EWIs, can now be displayed in German and Japanese, besides standard English. The user is able to select the appropriate language when the setup is executed.
  • Support for Microsoft Technologies - VBUC is able to generate solutions (.sln) files compatible with Visual Studio 2010, 2012, 2013, 2015 and 2017. The user is able to select the Visual Studio target from a dropdown menu. It also executes on Windows 10, Windows 7, Windows 8, Windows Vista and 64-bit operating systems.
  • Automated COM Objects Memory Management - In .NET the memory is released in a different way than VB6, and this can cause different behaviors. For example, in some cases ADO Connections will remain open for more time than in VB6. This optional feature will generate explicit code to achieve the same behavior.