Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents

Purpose

Suppose you are interested in upgrading-to-.NET a number of VB6 projects, as listed in the example below:

D:\gmSamples\FMstocks\src\FMSLib\FMSStore_Bus_VB6\FMSStore_Bus.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMSStore_DB_VB6\FMSStore_DB.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMSStore_Events_VB6\FMSStore_Events.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMSTest_VB6\FMSTest.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMStocks_Bus_VB6\FMStocks_Bus.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMStocks_DB_VB6\FMStocks_DB.vbp
D:\gmSamples\FMstocks\src\FMSLib\FMStocks_Ext_VB6\FMStocks_Ext.vbp

 

...

...

Interface Description Files (IDFs)

The purpose of this exercise is to produce correct Interface Description Files (IDFs) for all the externals (libraries and components of .dll, *.ocx, *.tlb, or *.olb extension, for example) referenced by a group of well-formed VB6 projects (.vbp), as listed above for example.

...

It is assumed that all externals referenced by these projects are properly registered (and licensed, for third-party proprietary components) on the machine where these projects build correctly.
The outputs of this exercise are the IDFs (*.xml files) listed in Step 8.

...

Step 1. Start the gmStudio Wizard

In gmStudio, select [File][Upgrade Project Wizard …] and press [Next] when ready

 

...

Step 2. Specify Source Input Parameters

In the Form below

  1. Select the folder containing the VB projects (VB6 or ASP) you want to translate to .NET
  2. Press [Scan and Display] to get a list of projects
  3. Select the projects you want to remove from translation, if any, and press [Remove Selected]
  4. Press [Next] when ready to move on with the selected list of projects (seven (7) in this case)



    Step 3. Specify Target Output Parameters


    In the Form below

     

    1. Enter a "Project Name" for your Translation Project
    2. Select a target "Language" (C# or VB.NET) for the translation
    3. Select the "Target IDE" (the version of Visual Studio .NET installed on your machine)
    4. Select a "COM Strategy" ("Stub Framework" by default)
    5. Select a "Project Folder" where the results (outputs) of the translation will be written
    6. Take all other default selections for "Batch Processing Options"
    7. Press [Next] when ready to move on with the actual translation



...



...

Step 4. View Upgrade Process

The Form below shows the various translation steps as they are being completed.

  1. Press [Next] to move on to reviewing the results of the translation process.

    Anchor_Toc18223118_Toc18223118



    Step 5. Continue

    In the Form below, press the [No, thank you … Next] button, to move on.

    anchor

    _Toc18223119_Toc18223119

    Step 6. Review Metrics Summary

    In the Form below, press the [Finish] button, to move on.

    Anchor_Toc18223120

    _Toc18223120



    Step 7. Review Results

    The Form below shows the Main Screen of the FMSLib Upgrade Project that was set up by the previous Steps (Steps 1 – 6), including the Interface Description Files ("IDFs") that were generated from all the externals (libraries or components) referenced by all the VB6 projects in this Upgrade Project.
    1. From the Title Menu, select [View][Interface Description Files] to move to the next step.

      Anchor_Toc18223121_Toc18223121



      Step 8. Review Generated Interface Description Files (IDFs)

      The snapshot below shows a listing of the IDFs (*.xml text files) contained in the …\idf\FromIdl folder, as generated by gmStudio for all the externals referenced in this Upgrade Project.

       

      Anchor_Toc18223122_Toc18223122

      Step 9. Archive IDFs for Distribution

      In File Explorer, select the idf\FromIdl folder and right-click [Send to][Compressed (zipped) folder] in order to compress all of the IDFs into a zip file, FromIdl.zip, as shown below.


      At this point, these IDFs will be ready to "ship" for use in gmStudio – on a machine that may not have the corresponding externals properly registered (or licensed in the case of licensed third-party components).