A Migration Project File contains the settings and a list of migration units that you wish to process as a coherent set.
A Migration Project document is an XML file with *.gmproj extension.
A Migration Project is created using the Migration Project Setup form as described in the Preparation section of this guide.
A Migration Project file contains two types of information:
Here is an example of a project file for one of the migrations discussed in the samples section -- Interop1_csh.gmProj:
<MigType>VBP</MigType> <DevEnv>VS2008</DevEnv> <ProjFolder>\gmProj\DemoScantool</ProjFolder> <DeployFolder>%ProjFolder%\deploy</DeployFolder> <TlbSearchPath>c:\3pc</TlbSearchPath> <TaskFilter>*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*</TaskFilter> <BatchCommands>Author Interop Assemblies,Author Interface Descriptions,Run Translation,Deploy Translation,Build Translation,</BatchCommands> <TaskList><![CDATA[ ... Task List Data ... ]]></TaskList> </gmStudio>
The settings stored with the Migration Project are initially set when you create the project file as discussed the Preparation section. The settings in a Migration Project file include the following:
|MigName||Migration Name: User-defined string used to identify the migration|
|MigType||Migration Type: VBP or WEB.|
|DevEnv||Target IDE: e.g. VS2010|
|ProjFolder||Workspace Root Folder: this folder will contain Migration Project-specific folders to contain files such as logs, Configuration Files, and reports.|
|DeployFolder||Deployment Root Folder: this folder will receive deployments of migrated code. The deployment folder can be defined in terms of application variables. For example, to make the deployment folder a child of the workspace set DeployFolder to something like this|
|TlbSearchPath||TypeLib Search Path. This is a semicolon delimited list of folders to use to find COM components that are not registered.|
|VirtualRootFolder||Virtual Root Folder: this folder is used as the "VirtualRoot" when resolving #includes in ASP Site migrations. Not used by VBP migrations.|
|TaskFilter||Task Filter: a sequence of pipe-delimited wild-card patterns that define which migration tasks to display in the gmStudio UI.|
This element is maintained by the [Filter Dialog] in gmStudio.
|BatchCommands||Command List: a comma-delimited list of operations to be performed when the user clicks the Batch Button. This element is maintained by the [Batch Control] Dialog in gmStudio.|
|TaskList||Task List: The list of Migration tasks associated with the migration project.|
The task lists stored with each Migration Project describes a collection of Migration Units (e.g., VBPs or ASP pages). Each item in the task list contains about 20 pieces of data that describe the nature and status of a migration unit.
Migration Tasks are added on the Migration Project setup form. Tasks may be removed using the Migration Task Context Menu. Individual tasks may be edited on the [Edit] display of the [Information] Panel. gmStudio can also help you edit and load a task list as a tab-delimited file.
Task records are stored as a block of tab-delimited text in the Migration Project files.
Each task record contains the following fields:
|BldPath||Path of build product|
|BldType||Type of build product (VBP:Exe|OleDll|OleExe|Control or WEB:PULP|INCLUDE|PAGE)|
|LastMsg||Last status message|
|LibRegd||Referenced COM components are registered (READY|NOTFOUND)|
|MigName||Name of parent migration project|
|NetBlds||.NET Build Status (SUCCESS|FAIL)|
|NetLang||Target .NET Language (csh|vbn)|
|NetSize||Source LOC for .NET (includes RESX, CODE, PROJ)|
|RefStat||Interface description file status (see LibStat Flags)|
|SrcBlds||VB6 Build Status (SUCCESS|FAIL)|
|SrcFile||Name of migration unit source file|
|SrcFldr||Location of migration unit source file (Vbp or Web content)|
|SrcName||Unique identifier of the task within the migration project|
|SrcOrdr||Task build order based on VBP references or ASP #includes|
|SrcSize||Source LOC for VBP/ASP (may be negative if files are missing)|
|SrcType||Type of migration unit (VBP|WEB|XML)|
|TScript||Translation script template name|
|TaskTag||A short string used to differentiate different types of migration tasks; for example for different migration configurations|
|TrnStat||Translation Status (SUCCESS|WARN|ERROR|ABEND)|
|UsrCmds||User command script to run after key processing steps translation, deployment, or build (optional). See User Batch Command Script in this section.|
|UsrCmnt||User-Defined Comment for filtering and tracking (optional)|
|UsrDesc||User-Defined Description of Task (optional)|