Skip to content

Blog

Why Leave VB6/ASP Behind This Year?

:::note Summary

Given the ever-changing nature of requirements, people, and technologies impacting software development, legacy modernization is an inevitable challenge. Learn about why you should boost the urgency of your modernization efforts in this article.

::: If you still are holding off on your migration project, here are a few reasons why it is more urgent need


First, the official end-of-support for Visual Basic classic (VB6) was in April 2008 — almost 15 years ago. It has also been well over 20 years since the last major release of VB6. As a result, the number of skilled developers who are available and willing to work with VB6 is critically low. This represents a growing business risk for organizations maintaining systems in VB6. The same type of risks exist for organizations maintaining web sites with ASP classic. Keep in mind that no one last for ever, if you depend on key people to help you maintain your legacy apps, they are always getting closer to **retirement;**you would do well to complete your modernization projects while they are available to help.

Second, there have been many recent changes for Windows Operating Systems:

  • End of Windows XP Extended Support: April 2014
  • End of Windows Server 2008 Mainstream Support: January 2015
  • Start of Availability of Windows 10: July 2015
  • Start of Availability of Windows Server 2016: October 2016
  • End of Support for Windows 7: January 2020

Third, Microsoft has made huge investments in .NET. Since 2000, Microsoft has published many significant releases of the .NET languages, frameworks, and tools. In addition, Microsoft and others have made great investments in open source. .NET has been well-received by product vendors, developers, and other experts. It enjoys outstanding support from the open source community with compilers, IDEs, frameworks, and other tools enabling .NET development for platforms other than Windows. Going into 2017, we find .NET is a powerful, mature development platform backed by a global community of IT professionals.

Fourth, the last decade brought important advancements in how we build software: improved development operations tools and techniques, powerful new frameworks and design patterns, and exciting new areas for application features. These new tools, new methodologies, work well with .NET. When they are combined with strategic business vision, they make a strong case for modernizing VB6/ASP legacy systems and adopting .NET.

For organizations still running on old, unsupported technologies, this may be the year to plan and implement a successful upgrade! We have the upgrade technology and the necessary expertise in this area to assist you. Please give us a call or email — we will be very happy to hear from you.

gmStudio Version 30.43: Modernization Improvements

gmBasic is a powerful code processor that reads, interprets, and rewrites VB6/ASP/COM systems as .NET (C# or VB.NET). We are always improving gmBasic so that it is more robust and flexible and it produces cleaner, more correct results. This distribution, Version 30.43, includes several enhancements:

  • Improves the general ability to produce build-complete .NET code from very large, very complex VB6 systems (most recently including enhancements needed to upgrade a Comprehensive Accounting System of 38 inter-related VBPs re ferencing 1,149 unique files containing over 1.8M unique LOC).
  • Improves ByRef to ByVal optimization rules
  • Improves precision of division involving fixed-point quantities.
  • Improves handling of international Character sets in source code and upgrade configuration files
  • Improves handling With blocksusing instance of a user-defined type (C#)
  • Improves handling of IsNull/Null operations with default properties
  • Improves handling of power-of-ten numeric constants to use the ‘E’ notation (e.g., 1.0E3)
  • Improves handling of optional parameters that use private symbols as default values by using overloading

gmStudio: Upgrade Solution Development Environment

Section titled “gmStudio: Upgrade Solution Development Environment”

Powered by gmBasic, gmStudio is a development environment for creating high-performance, custom VB6/ASP/COM to .NET upgrade solutions. We are always adding functionality to gmStudio and also making it easier to use. This distribution includes several enhancements:

  • Adds a FileName attribute in the ScriptRule commands
  • Adds support for copying selected text to the clipboard from the Side-by-Side code review form
  • Adds support for authoring ’%’ character from Search Reporting template (useful for generating refactoring commands from search results)
  • Improves copying task list data using CTRL-C (names) and Shift-CTRL-C (details)
  • Adds option to add a User Command Script to each task when adding tasks to a gmStudio project file
  • Improves Search Reporting options: unique, template, detail, none
  • Improves ProgID Report by removing deprecated CLSID field
  • Corrects issue with FileExists test when file path is null
  • Corrects issue with starting application with the /folder command line switch

gmStudio ships with a collection of sample upgrade rules that can be used to add custom features to your upgrade solution. These XML documents and gmSL scripts are distributed as source that you may modify to fit your unique requirements. The latest distribution of sample rules files includes several improvements:

  • Standardizes sample COM replacement rulesso that the internal library id is same as default COM library id. This simplifies activating COM replacement rules files in your upgrade solution
  • Simplifies MigrationSupport namespace conventions to streamline the supporting code if needed
  • Updates standard script templates by moving configuration folder specifications to top of script
  • Updates comments in sample standard script templates standard script templates file

Great Migrations publishes a number of sample VB6/ASP upgrade solutions to illustrate the capabilities of gmStudio. The samples were updated to reflect the latest product improvements and conventions

gmStudio Version 30.40 Release Notes

gmBasic is a powerful code processor that reads, interprets, and rewrites VB6/ASP/COM systems as .NET (C# or VB.NET). We are always improving gmBasic so that it is more robust and flexible and produces cleaner, more correct results. This distribution, Version 30.40, includes several enhancements:

  • Improves general ability to produce build-complete .NET code from very large, very complex VB6 systems (most recently including enhancements needed to upgrade a Comprehensive Accounting System of 38 inter-related VBPs referencing 1,149 unique files containing over 1.8M unique LOC).
  • Improves client-side VBScript to JavaScript transformation when also using Subsystem=loc
  • Corrects handling of <header> tag in ASP
  • Improves handling large COM libraries with classes implementing more than 100 interfaces (e.g. ESRI GIS)
  • Improves rewriting Select Case as C# switch statement rather if/else
  • Improves restructuring code using both GoSub with GoTo labels into separate functions
  • Improves recognizing operations in late bound property Get/Let property operations
  • Improves upgrading Popup menu
  • Improves handling If Then Else when there is no operation after Then
  • Increases the use of cleaner, early bound syntax for symbols having an inferred type
  • Increases the limits of the Build Order Tool to allow up to 1,024 VBPs

Powered by gmBasic, gmStudio is a development environment for creating custom VB6/ASP/COM to .NET upgrade solutions. We are always adding functionality to gmStudio and also making it more helpful and easier to use. This distribution includes several enhancements:

  • Adds support for a Wizard-Only license for a new “Great Migrations Upgrade Wizard” offering.
  • Improves licensing so that IDF generation is allowed after the Trial License is expired
  • Improves logic to setup Global Stubs script
  • Adds Search Terms Presetsto the Search feature
  • Adds Search Reports Presets tothe Search feature
  • Improves .NET Build Log Report to more accurately reflect .NET project path
  • Improves Translation Log Report for missing references

gmStudio ships with a collection of sample upgrade rules that add custom features to your upgrade solution. These XML documents and gmSL scripts are distributed as source that you may modify to fit your unique requirements. This distribution of the latest set of sample rules files includes several improvements:

  • Improves the default Search Terms file adding presets
  • Improves the default Search Report Templates file adding presets

Great Migrations publishes a number of sample VB6/ASP upgrade solutions to illustrate the capabilities of gmStudio. All of the samples were updated to reflect the latest product improvements and conventions.

gmStudio Version 30.37 Release Highlights

gmBasic is a programming language processor that reads, interprets, and rewrites VB6/ASP/COM as .NET code (C# or VB.NET). We are always improving gmBasic so that it is more flexible and produces cleaner, more correct .NET code. This distribution, Version 30.37, of the upgrade engine and metalanguage files includes several enhancements:

  • Improves automatically producing build-complete C# code from very large, very complex systems (most recently a Retail Auto Parts Distribution Management System comprised of 80 VBPs and 1.5M LOC).
  • Corrects missing VB6 Form Menu when the form has no other controls
  • Improves propagation of Refactor/Rename in in COM description files generated from source code
  • Increases the number of subclasses that can be members of a coclass in a COM description file
  • Corrects duplicated interface members in generated stub framework
  • Improves Naming Conventions for temporary non-LValue arguments needed to pass by ref
  • Improves correctness of Global Build Process Workflow
  • Improves upgrading Is Operator to use .Equals() or equality operator as appropriate
  • Removes built-in support for MigrationSupportUI
  • Removes built-in support for DevEnv=VS2005 and DevEnv=VS2008

Powered by gmBasic, gmStudio is a development environment for building custom VB6/ASP/COM to .NET upgrade solutions. We are always adding functionality to gmStudio and also making it more helpful and easier to use. This distribution contains the latest build of gmStudio, which includes several enhancements:

  • Improves initial value of Task Description field to contain VBP Name or Description if available
  • Adds an item for displaying the Side-By-Side viewer from the Source Metrics context menu
  • Adds Regular Expression Conditions to the ScriptRules processor
  • Adds PreAnalyse and PostAnalyze insertion points for the ScriptRules processor
  • Improves Source Reference Report/Search
  • Improve searching and reporting Multi-Unit Scripts (e.g. ASP site scripts) with SrcType=XML
  • Improves accuracy of Target Code Scan
  • Improves CTLR-C and Shift-CTLR-C for copying Task Information to the Clipboard

gmStudio ships with a collection of sample upgrade rules that add custom upgrade features to your upgrade solution — such as custom COM replacement and diagnostic instrumentation. These XML documents and gmSL scripts are distributed as open source and you may modify them to fit your unique requirements. This distribution of the latest set of sample rules files includes several improvements:

  • Improves the default Custom Scripting Transformation script (ScriptRules.xml)

Great Migrations publishes a number of VB6/ASP upgrade solution samples to illustrate the capabilities of gmStudio. All of the samples were updated to reflect the latest product improvements and conventions. All samples now target VS2013 although you may easily modify them to target VS2010 or VS2015.

  • Removes MigrationSupportUI=off

gmBasic Version 30.32: Build-Complete C# Improvements

gmBasic is a programming language processor that reads, interprets, and rewrites VB6/ASP/COM as .NET code (C# or VB.NET). We are always improving gmBasic so that it is more flexible and produces cleaner, more correct .NET code. This distribution, Version 30.32, of the upgrade engine and metalanguage files includes several enhancements:

  • Improvements to be able to produce build-complete C# code from very large and very complex systems(most recently a VB6 Shipping/Cargo Simulation System comprised of 22 VBPs and 1M LOC).
  • Adds Interfaces.dll extension to help upgrade dynamic parameters to Custom Interfaces
  • Improves Array to Array assignments
  • Improves upgrading goSub code to separate functions
  • Improves upgrading Error Handling
  • Improves support for the COM Stub Framework generation process
  • Adds gmSL Character functions IsLowerCase, IsUpperCase, and Length

gmStudio is a development environment for building custom VB6/ASP/COM to .NET upgrade solutions. We are always adding functionality to gmStudio and also making it more helpful and easier to use. This distribution contains the latest build of gmStudio, which includes several enhancements:

  • Improves support for running in 32bit environments
  • Improves stability of running gmStudio as a Visual Studio Extension
  • Improves support and documentation for the COM Stub Framework generation process
  • Improves support and documentation for the ScriptRule feature
  • Adds match order to search results on the Side-by-Side Viewer
  • Improves Template Search Reporting by making template place-holders case-insensitive
  • Improves the Visual Studio Solution Report by using a “GenerateSolution.txt” file to file to specify which projects to include in the solution
  • Improves cancelling long running batch process cancelling the process tree, not just the parent process
  • Corrects multi-line target code search
  • Corrects Side-by-Side Viewer when selected search record is from a .NET Designer file
  • Improves the GUI Scan Report to a record fully-qualified control name for each property setting
  • Improves the Translation Log Report to record additional warning messages
  • Contains various minor UI improvements

gmStudio ships with a collection of sample upgrade rules that add custom upgrade features to your upgrade solution — such as custom COM replacement and diagnostic instrumentation. These XML documents and gmSL scripts are distributed as open source and you may modify them to fit your unique requirements. This distribution of the latest set of sample rules files includes several improvements:

  • Adds StubControlBaseClass.xml to assist the upgrade of Stub Framework controls by deriving from WinForms Controls
  • Improves the COM upgrade for Internet Controls (ieframe.dll/shdocvw.dll/msinet.ocx)
  • Improves the COM upgrade for MS Calendar Control (MSCAL.OCX)
  • Improves the COM upgrade for MS Common Controls 2 (MSCOMCT2.OCX)
  • Improves the COM upgrade for MS FlexGrid Control (MSFLXGRD.OCX)
  • Improves the COM upgrade for MS WinSock Control (MSWINSCK.OCX)
  • Improves the COM upgrade for MS XML API (MSXML6.dll)
  • Improves the COM upgrade for Resize Kit (ResizeKit.ocx)
  • Improves the COM upgrade for Rich Text Control (richtx32.ocx)
  • Improves the COM upgrade for UI Rad Text Controls (uiRAD.ocx)
  • Improves the COM upgrade for RegEx API (vbscript.dll/3)
  • Improves the Global Stub Framework Generation script (GlobalStubs.xml)
  • Improves the Custom Scripting Transformation script (ScriptRules.xml)