InfoQ

News

VB 6 to VB.NET Migration Proceeds Ever So Slowly

Posted by Jonathan Allen on Feb 22, 2008 06:01 PM

Community
.NET
Topics
Rich Client / Desktop ,
.NET Framework
Tags
VB 6 ,
Visual Basic.NET

Six years after VB.NET was released, Microsoft is still slowly working towards a true migration path for VB 6 applications. Recently Microsoft released "Visual Basic Power Packs 3.0". This release adds the Data Repeater, an important control for layouts.

The Data Repeater is based on the VB 6 layout control. It takes a set of controls and replicates them for each row in a data source. The controls can be laid out horizontally or vertically and support scrolling.

Also included in this release are the Lines and Shapes controls and the VB 6 style Printer Library from previous releases. All three include a bootstrapper package making it easier to include them in ClickOnce and MSI based deployments.

While this would certainly be useful for developers who are just now starting their conversion process, one has to wonder if there are any VB 6 applications left that will be converted. By now most companies have probably either made the conversion or resigned themselves to starting a new version from scratch.

The Power Pack is available from Microsoft's Download Center.

5 comments

Reply

re: one has to wonder if there are any VB 6 applications left ... by mark juras Posted Feb 23, 2008 9:00 PM
Re: re: one has to wonder if there are any VB 6 applications left ... by Rob Windsor Posted Feb 25, 2008 2:24 AM
Interop Forms Toolkit by Rob Windsor Posted Feb 25, 2008 2:15 AM
Migration by RaviKiran Belthur Posted Feb 26, 2008 11:31 PM
Re: Migration by Jerry Caussade Posted Jun 24, 2008 4:22 PM
  1. Many large corporate and commercial VB6 (not to mention ASP) applications contain dozens of person-years of development effort. Many organizations that run/sell these huge applications are still maintaining them in VB6 (yes, the person-years of development continue to pile on). And, they are all struggling with how to upgrade these applications in an efficient, effective manner that does not completely overwhelm their labor supply. Just "starting a new version scratch" is simply not feasible, for it would mean re-doing dozens of person-years of work on top of everything else.... High-yield custom tool-assisted rewrite (i.e., a custom translation) may be the only feasible approach -- assuming they can agree on what their applications should look like in .NET.

  2. Back to top

    Interop Forms Toolkit

    Feb 25, 2008 2:15 AM by Rob Windsor

    First off, there is a ton of VB 6.0 code out there and there's more being developed every day.

    The most important tool the VB Team has released to assist people supporting this legacy code base is the Interop Forms Toolkit. The toolkit allows developers to easily create forms and user controls in .NET which can be used in VB 6.0 client applications.

    This Channel 9 video gives a good introduction:

    channel9.msdn.com/Showpost.aspx?postid=327369

  3. The best strategy is a phased migration with COM Interop. This allows companies to begin to rewrite obsolete or high maintenance code using .NET while leaving the remiaining legacy code in place. A full-scale migration or rewrite is risky and time consuming as well as expensive. Using the phased approach, each "piece" of the migration is low-risk and gives almost immediate value.

    I did an interview on .NET Rocks TV on this subject which you can check out here:

    www.dnrtv.com/default.aspx?showNum=94

  4. Back to top

    Migration

    Feb 26, 2008 11:31 PM by RaviKiran Belthur

    The most important thing with the migration is to have the VB6 code prepared correctly so that it will be ready for migration.
    We need more and more customized tool which can provide rule based migration stratergies.

  5. Back to top

    Re: Migration

    Jun 24, 2008 4:22 PM by Jerry Caussade

    COM Interop is a VERY short-term solution. Microsoft has dropped support for the VB6 IDE. You can't rely on the Upgrade Wizard, but the same company that developed that, ArtinSoft, has an enterprise version called the VBUC. It migrates to C# as well, and large banks have migrated millions of lines of code succcessfully with it. It is MUCH better than the Wizard. It is low risk and takes about 1/4 to 1/3 the time of a manual rewrite to fully complete a migration and test it.

    I agree a manual rewrite is very risky.
    I do think that Form Interop with the VBUC is an interesting combinationt, though. If your VB6 code is modular enough, you can migrate parts of the code and have it temporarily run in the VB6 environment. But check out ArtinSoft's VBUC tool. It even handles Variants (if not late-bound).

Exclusive Content

Ruby.rewrite(Ruby)

In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.

Book Except and Interview : Aptana RadRails, An IDE for Rails Development

Aptana RadRails: An IDE for Rails Development by Javier Ramírez discusses the latest Aptana RadRails IDE, a development environment for creating Ruby on Rails applications.

Fast Bytecodes for Funny Languages

Cliff Click discusses how to optimize generated bytecode for running on the JVM. Click analyzes and reports on several JVM languages and shows several places where they could increase performance.

Scott Ambler On Agile’s Present and Future

Scott Ambler, Practice Lead for Agile Development at IBM, speaks on the current status of the Agile community and practices having a look at the perspective of the Agile’s future.

Manager's Introduction to Test-Driven Development

Dave Nicolette and Karl Scotland try to introduce non-technical managers to one of the most popular Agile development techniques: Test-Driven Development (TDD).

Structured Event Streaming with Smooks

Smooks is best known for its transformation capabilities, but in this article Tom Fennelly describes how you can also use it for structured event streaming.

How to Work With Business Leaders to Manage Architectural Change

Successful architectures evolve over time to meet changing business requirements. Luke Hohmann presents how to collaborate with key members of your business to manage architectural changes.

Colors and the UI

In this article, Dr. Tobias Komischke explains how colors used in a GUI can influence our interaction with a computer and offers advice on using the appropriate colors for the interface.