Blog
Skip to end of metadata
Go to start of metadata

gmBasic: Upgrade Engine

gmBasic is a code transformation tool that reads, interprets, and rewrites VB6/ASP/COM systems to one of the .NET languages (C# or VB.NET). Based on feedback from our clients and migration projects in the field, we are continuously improving gmBasic so as to help users more easily produce cleaner and more correct results. Most recently, this work included the general improvements needed to produce build-complete C# code for an Manufacturing Reporting System. This system is an ASP web site organized in 123 web page files that reference 26 #include files. The site also depends on 8 COM libraries. This distribution, Version 31.25, includes several enhancements:

  • Adds support for using BuildFile=global in ASP translations
  • Adds Migration Utility extension framework for developing custom migration rules in C# and integrating them with the Upgrade Engine
  • Improves gmSL and gmAPI API features and functions
  • Improves handling ExitDo and ExitFor particularly when occurring in a Select-Case
  • Improves handling the intrinsic Array function in a file having Option Base 1
  • Improves handling Arrays dimensioned with a forward-reference to const
  • Improves handling vbNullString
  • Improves support for migrating VBScript Intrinsic Functions in ASP translations
  • Improves support for migrating Cookies collections in ASP translations
  • Improves support for migrating ScaleMode-related GUI Properties
  • Improves CodeStyle feature by implementation using gmAPI
  • Improves Client-Side VBScript to JavaScript translation in ASP translations
  • Improves migration of variables declared with WithEvents
  • Improves metalanguage file handling to allow finding a file by standard path resolution as well as metalanguage folder resolution
  • Improves specification of ASPNET_Compiler build for ASP translations

gmStudio: Upgrade Solution Development Environment

Powered by gmBasic, gmStudio is a development environment for analyzing code and developing custom VB6/ASP/COM to .NET upgrade solutions. We are continuously adding functionality to gmStudio and making it easier to use. This distribution includes several enhancements:

  • Adds option to search the analyzed model audit report
  • Adds option to report for multiple Search Reporting modes simultaneously
  • Improves logic to identify Server-Side code blocks in ASP metrics analysis
  • Improves date formatting to be standard across all reports
  • Improves member location in the Target Code Search Report (C# only)
  • Improves installer to allow launching gmStudio after install

gmAPI: a .NET API for Developing Advanced Upgrade Solutions

Powered by gmBasic, gmAPI is a .NET API for automating our upgrade engine and accessing the semantic models produced by our unique linguistic compilation technology. gmAPI also includes classes for managing complex upgrade rules and integrating with gmStudio. This API was updated to reflect the latest product improvements and conventions.

  • Adds Migration Utility approach to building gmBasic extensions
  • Improves gmBasic.Terminate to ensure all information manager storage areas are closed

gmStudio Extensions

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 sample rules were updated to reflect the latest product improvements and conventions. See also additions and changes in gmStudio Extensions Repository.

  • Adds and updates extensions following the recommended file naming conventions
  • Adds msscript.ocx.ClearScript.Refactor.xml
  • Adds over 65 extension rule files installed with the product
  • Improves WPFSubsystem.gmsl to handle nested menus better

Sample Upgrade Solutions

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

  • Improves all Samples to target Visual Studio 2019
  • Improves ScanTool Sample to be compatible with Windows10 (msxml6.dll changes)
  • Improves vb3DDefine Sample to use latest version of ClearScript API
  • Improves sample runtime support library to include a Shape control
  • Improves sample runtime support library to include a Line control