Page tree
Skip to end of metadata
Go to start of metadata

gmStudio's code analysis and translation capabilities may be extended and modified through various rules files and scripts.  These custom transformation are specified using various types of configuration files that extend and modify the definitions of language and API elements and also allow activating dynamic translation rules.  This page contains samples of these configuration files.  The concepts and techniques for creating and using these customizations are described in other articles:

A collection of sample rules files and script is cataloged here; you may download these and experiment with them in your environment.   You may visit the full list of gmStudio Extension files in the attachments to this page.   Please Contact Us or post your questions here.

API Migration Rules Files

Migration Rules Files (RefactorLibrary Files) are the preferred means of mapping a COM API to its replacement in .NET.   

Best practice is to load an API Migration Rules file using a registry-migfile command, however they can be loaded by convention when by naming the migration file mig.libfile.xml (for example mig.scrrun.dll.xml will be loaded automatically for codes that references scrrun.dll.xml).    The file mig.vb7lang.xml is a special case: it may be used to modify the mapping of VB6/ASP language elements to  .NET. 

The recommended naming convention for these files is libfile.[target].Refactor.xml where libfile is the name of the type library (e.g. scrrun.dll) \[target] is a user-defined descriptive name.  For example scrrun.dll.SystemIO.Refactor.xml contains rules for migrating scrrun.dll (Scripting Runtime) to System.IO.  Which may be activated with a registry command.

<registry type="MigFile" source="scrrun.dll" target="scrrun.dll.SystemIO.Refactor" />
or
<registry type="MigFile" source="scrrun.dll" target="..\usr\scrrun.dll.SystemIO.Refactor.xml" />

Note: the first example above uses Metalanguage file path resolution and will look through the metalanguage folders for a .XML file.  The second example uses an actual file path specification relative to the working folder.

  File Modified
XML File comdlg32.ocx.Remove.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File comdlg32.ocx.Winforms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File comdlg32.ocx.Wrapper.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File Comsvcs.dll.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File cscalbtn.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File DAO350.DLL.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File GRID32.ocx.WinForms.Refactor.xml Jan 12, 2021 by Mark.Juras
XML File ieframe.dll.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mig.ActBar.ocx.xml Jul 29, 2019 by Mark.Juras
XML File mig.actrpt.dll.xml Jul 29, 2019 by Mark.Juras
XML File mig.actrpt2.dll.xml Jul 29, 2019 by Mark.Juras
XML File mig.arviewer.ocx.xml Jul 29, 2019 by Mark.Juras
XML File mig.EXCEL.EXE.Interop.xml Aug 04, 2019 by Mark.Juras
XML File mig.Language.wpf.xml Jul 29, 2019 by Mark.Juras
XML File mig.msado15.dll.SqlClient.xml Feb 08, 2021 by Mark.Juras
XML File mig.MSCOMCT2.OCX.Winforms.xml Oct 14, 2019 by Mark.Juras
XML File mig.mscomctl.ocx.xml Feb 08, 2021 by Mark.Juras
XML File mig.msscript.ocx.ClearScript.xml Jul 29, 2019 by Mark.Juras
XML File mig.MSVBVM60_3.dll.xml Feb 27, 2020 by Mark.Juras
XML File mig.MSVBVM60.dll.xml Feb 27, 2020 by Mark.Juras
XML File mig.richtx32.ocx.WinForms.xml Jul 29, 2019 by Mark.Juras
XML File mig.ssa3d30.ocx.xml Jul 29, 2019 by Mark.Juras
XML File mig.Threed20.ocx.WinForms.xml Feb 08, 2021 by Mark.Juras
XML File mig.vb7lang.xml Feb 08, 2021 by Mark.Juras
XML File msado15.dll.DataLib.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File msado15.dll.SqlClient.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mscomct2.ocx.Winforms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mscomctl.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mscorlib.tlb.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File msdatgrd.ocx.DataGridView.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mshflxgd.ocx.LiteWrapper.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File mshflxgd.ocx.Wrapper.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File MSOUTL32.ocx.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File msrdo20.dll.DataLib.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File msscript.ocx.ClearScript.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File msxml6.dll.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File pvtreex.ocx.Wrapper.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File Refactor.DAO350.DLL.xml Feb 08, 2021 by Mark.Juras
XML File Refactor.Mscomctl.ocx.xml Feb 08, 2021 by Mark.Juras
XML File Refactor.Richtx32.ocx.xml Feb 08, 2021 by Mark.Juras
XML File Refactor.Stdole2.tlb.xml Feb 08, 2021 by Mark.Juras
XML File richtx32.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File Scrrun.dll.SystemIO.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File shdocvw.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File Stdole2.tlb.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File TABCTL32.OCX.Wrapper.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File Threed20.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File THREED32.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File TLBINF32.DLL.Refactor.xml Sep 01, 2020 by Mark.Juras
XML File vbscript_3.dll.SystemText.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File vbscript_3.SystemText.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File vsflex2.ocx.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras
XML File vsflex2.WinForms.Refactor.xml Feb 08, 2021 by Mark.Juras


Custom Interface Description Files (IDFs)

Custom IDFs allow you to migrate COM APIs to .NET replacements. This is a powerful and fairly intuitive technique, but it is not as maintainable as Migration Rules files. 

The gmStudio samples use custom IDFs files, but this approach will be phased out in favor of using Migration Rules  files. See Custom COM Replacement.

  File Modified
XML File GM.actrpt2.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.ADODB_to_DataLib.dll.xml Nov 09, 2020 by Mark.Juras
XML File GM.ADODB_to_System.Data.Odbc.dll.xml Aug 05, 2019 by Mark.Juras
XML File GM.ADODB_to_System.Data.Sql.dll.xml Aug 08, 2019 by Mark.Juras
XML File GM.cdonts.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.COMDLG32_Remove.OCX.xml Jul 29, 2019 by Mark.Juras
XML File GM.COMDLG32.OCX.xml Nov 09, 2020 by Mark.Juras
XML File GM.DAO350.DLL.xml Jul 29, 2019 by Mark.Juras
XML File GM.EXCEL_Interop.EXE.xml Feb 27, 2020 by Mark.Juras
XML File GM.ieframe.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.msado27.tlb.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSCAL.OCX.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSCOMCT2.OCX.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSCOMCTL.OCX.xml Feb 27, 2020 by Mark.Juras
XML File GM.MSFLXGRD.OCX.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSHFLXGD.OCX.xml Jul 29, 2019 by Mark.Juras
XML File GM.msinet.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.msmask32.ocx.xml Nov 09, 2020 by Mark.Juras
XML File GM.MSOUTL_Interop.OLB.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSRDO20.DLL.xml Jul 29, 2019 by Mark.Juras
XML File gm.msscript.ocx.xml Nov 29, 2020 by Mark.Juras
XML File GM.msvbvm60_3.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSVBVM60.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.MSWORD_Interop.OLB.xml Jul 29, 2019 by Mark.Juras
XML File GM.msxml6.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.oip11.tlb.xml Jul 29, 2019 by Mark.Juras
XML File GM.ResizeKit.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.richtx32.ocx.xml Feb 27, 2020 by Mark.Juras
XML File GM.scrrun.dll.xml Dec 19, 2019 by Mark.Juras
XML File GM.shdocvw.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.ssa3d30.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.SSLstBar.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.Stdole2.tlb.xml Jul 29, 2019 by Mark.Juras
XML File GM.TABCTL32.OCX.xml Feb 16, 2020 by Mark.Juras
XML File GM.tdbg6.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.TLBINF32.DLL.xml Jul 29, 2019 by Mark.Juras
XML File GM.uiRAD.ocx.xml Jul 29, 2019 by Mark.Juras
XML File GM.vbscript_3.dll.xml Jul 29, 2019 by Mark.Juras
XML File GM.xarraydb.ocx.xml Jul 29, 2019 by Mark.Juras

gmSL Scripts

gmSL scripts may be used to implement dynamic translation rules for various COM migrations in concert with custom IDFs and RefactorLibrary files.  gmSL Scripts may also be used for special purpose analysis and transformation on their own.  Learn more about gmsl here: gmSLIntroduction

Note we also offer a .NET API that has all of the power of gmSL and may be used to build custom translation engines as .NET executables.   

  File Modified
File comdlg32.OCX.Wrapper.gmsl Feb 08, 2021 by Mark.Juras
File Comsvcs.dll.ServiceMethods.gmsl Feb 08, 2021 by Mark.Juras
File gm.mscomctl.gmsl Jul 29, 2019 by Mark.Juras
File gm.mscomctltransform.gmsl Jul 29, 2019 by Mark.Juras
File gm.msflxgrdtransform.gmsl Jul 29, 2019 by Mark.Juras
File gm.msmasktransform.gmsl Nov 09, 2020 by Mark.Juras
File GM.msrdo20Transform.gmsl Jul 29, 2019 by Mark.Juras
File GM.tdbg6.ocx.gmsl Jul 29, 2019 by Mark.Juras
File instrument.gmsl Jul 29, 2019 by Mark.Juras
File makeDSRVB6.gmsl Aug 04, 2019 by Mark.Juras
File migListControls.gmsl Nov 09, 2020 by Mark.Juras
File msado15.dll.DataLib.Transform.gmsl Feb 08, 2021 by Mark.Juras
File msado15.dll.ODBC.Transform.gmsl Feb 08, 2021 by Mark.Juras
File msado15.dll.SqlClient.Transform.gmsl Feb 08, 2021 by Mark.Juras
File mscomct2.ocx.WinForms.gmsl Feb 08, 2021 by Mark.Juras
File mscomctl.ocx.MigCode.gmsl Feb 08, 2021 by Mark.Juras
File mscomctl.ocx.ServiceMethods.gmsl Feb 08, 2021 by Mark.Juras
File mscomctl.ocx.Transform.gmsl Feb 08, 2021 by Mark.Juras
File scrrun.dll.Transform.gmsl Feb 08, 2021 by Mark.Juras
File Stdole2.tlb.ServiceMethods.gmsl Feb 08, 2021 by Mark.Juras
File Tabctl.ocx.Wrapper.WPFTransform.gmsl Feb 08, 2021 by Mark.Juras
File Tabctl32.ocx.Wrapper.Transform.gmsl Feb 08, 2021 by Mark.Juras
File wpfSubsystem.gmsl Feb 08, 2021 by Mark.Juras

  • No labels