Application & Data Migration Blog Posts | GAPVelocity AI

What VB6 Modernization Requires, and How VELO for VB6 Handles It

Written by Cheyenne Sokkappa | Sep 16, 2026, 3:00:01 PM

Most VB6 applications still in production have outlasted the people who wrote them and the documentation that once explained them. The business rules that matter are no longer written down anywhere except the source itself, distributed across event handlers, module-level state, and forms that have accumulated years of undocumented changes. That is the real cost of modernizing a VB6 application. The language conversion is the easy part. Recovering and preserving the behavior encoded across the codebase is where the real work begins.

GAPVelocity AI has launched VELO for VB6, an Agentic AI platform that converts Visual Basic 6 applications into cloud-native web applications. This is a technical look at what the conversion involves and where the difficulty concentrates, written for the developer who will inherit the result.

Why File-by-File Translation Falls Apart

A tool that converts one file at a time produces code that compiles but does not reproduce the application's behavior, because a VB6 application is not a collection of independent files. Forms depend on modules, modules call into ActiveX controls, and data access logic is frequently wired directly into UI event handlers rather than isolated in a data layer. Global and module-level state is shared implicitly across these components. Convert each file in isolation and the relationships between them are lost, leaving you with syntactically valid C# that no longer functions as the original application did. Reconstructing that behavior after the fact is slower and more error-prone than a manual rewrite would have been.

VELO analyzes the application as a whole system before converting anything. It resolves the dependencies across forms, modules, ActiveX controls, and data access code, and maps them to a coherent target architecture rather than reproducing the legacy structure one file at a time.

How the Conversion Runs

VELO is built on Microsoft Foundry and uses specialized agents, each responsible for one stage of the process.

The first stage inventories the application: counts and analyzes every form, module, control, dependency, and data access path, producing an accurate account of the codebase before any conversion begins.

The second maps the target architecture in Blazor and .NET, establishing where each component of the application will land.

The third converts the VB6 source to Blazor and C#, carrying forward the business rules embedded in the original code.

The fourth validates the converted application against the behavior of the original, so any divergence is caught during the engagement rather than in production.

That validation stage is the one most likely to be shortened or skipped in a manual rewrite, because checking new behavior against old is slow and tends to lose priority as deadlines compress. Building it into the process is what makes the converted code defensible in review and safe to hand to a team.

What the Engagement Delivers

VELO is currently delivered as a managed service but will soon be available as a platform you can run yourself. The GAPVelocity AI team runs your code through the platform, and the engagement delivers:

  • Blazor and C# source that compiles and runs
  • A validation report and documentation of the remaining work, so the state of the converted code is fully accounted for
  • Full ownership of the converted code, with no ongoing licensing fees

The converted application is yours outright, with no dependency on VELO to build, run, or maintain it after delivery.

The Team Behind the Platform

The team that built VELO also built the original Visual Basic Upgrade Wizard that shipped with Microsoft Visual Studio. Through its ArtinSoft and Mobilize.Net heritage, GAPVelocity AI brings decades of migration experience and more than a billion lines of modernized legacy code to the platform. Developers who used the Upgrade Wizard have already worked with an earlier generation of this team's tooling; VELO applies Agentic AI to the analysis and conversion work that previously required a specialist reading the source directly.

How to Evaluate It

The process is structured so you can validate the approach before committing to a full engagement.

It begins with a free assessment that establishes scope, automation coverage, and a fixed price estimate.

From there, an optional one-week paid proof of concept converts a module from your own application, so you can evaluate the output against code you already understand. The full fixed-price engagement follows, with the price agreed on before work begins.

The proof of concept is the most useful evaluation step. Select a module whose behavior you know well, and review the converted Blazor and C# against your own understanding of what that code does.

See it in action

To request a free assessment or sign up for self-service early access, visit gapvelocity.ai/migrate/vb6.

Want to check out some of the modernized code and a live, interactive demo, check these out: