gmStudio FAQ

gmStudioのFAQを以下に記述します。

1.コメントのコードがbase64エンコードされてしまいます。

タスクの設定ファイルに以下の業を入れてください。コメントはもとの文字コードで出力されます。

<Select SuppressNumericEncoding="On" />


2.サンプルプロジェクトはないですか?

以下からダウンロードが可能です。

https://portal.greatmigrations.com/display/GMG/Downloads


3.コード全体にわたるルールを設定したい。

簡易マニュアルの8章を参照してください。

http://www.ondemandone.com/gmstudioManual.pdf


4.変換後に.NETのコードの変更をしたい。

以下のタグを利用してルールを記述します。

<Refactor>
<Reauthor subprogram="変換ルール名"><![CDATA[

変換されたコード

]]></Reauthor>
<Reauthor subprogram="__GetXMLTickerHistory.WriteXML_Recordset"><![CDATA[
変換されたコードを置き換えるコード
]]></Reauthor>
</Refactor>


5.複数あるファイルを1つのファイルとして出力したい。

VB6で、同じファイルが複数個所に分散している場合、1つのファイルを参照するように出力をすることが可能です。

globalsettingの中で、まとめたいファイルの数だけ以下を設定します。

<Registry type="SharedFile" Source="まとめたいファイル①" Target="まとめ先;含まれるライブラリ名" />

<Registry type="SharedFile" Source="まとめたいファイル②" Target="まとめ先;含まれるライブラリ名" />


6.Variantの変換後の型を指定したい。

<Compile Project="%SrcPath%">

  <Refactor errorstatus="ignore">

   <FixType identifier="変数名" type=".NETの型名"/>

   <FixType identifier="%SrcFileStem%.NullsToZero" type="Currency"/>

   <FixType identifier="%SrcFileStem%.NullsToZero.v" type="object"/>

   <FixType identifier="FMStocks_DB.Account.VerifyUser.AccountID" type="Integer"/>

   <FixType identifier="FMStocks_DB.Account.VerifyUser.FullName" type="String"/>

   <FixType identifier="FMStocks_DB.Account.GetAccountInfo.Balance" type="Currency"/>

   <FixType identifier="FMStocks_DB.Account.GetAccountInfo.Email" type="String"/>

  </Refactor>

</Compile>


7.参照の追加をしたい。

Registryタグを利用します。

"type"が"libname"の場合、"source"VBで利用しているDLLの名前を指定し、"target"に変換ルールが記述されているXMLを指定する。

<Registry type="libname" source="scrrun.dll" target="GM.scrrun.dll" />

"type"が"idfstatus"の場合、"source"には変換ルールを指定し、"target"には、以下を指定する。

migrate : "source"に指定されたルールにもとづきコードを生成する。

external : スタブのみを生成する。
<Registry type="idfstatus" source="GM.scrrun.dll" target="migrate" />


8.変換後の.NETのコードを置換したい。

Authorタグを利用して、変換のルールを作成します。その後、Replaceタグを指定して実際の置換ルールを指定します。

<Author>

  <Replace name="Remove CommonDialog; from designer code.">
   <OldBlock><![CDATA[Remove.CommonDialog]]></OldBlock>

  <NewBlock><![CDATA[ // removed ]></NewBlock>
</Replace>

</Author>


9.ルールの適用対象を指定したい。

Fixタグを利用して、適用範囲を指定します。"host"で、対象のタスクを指定します。(タスク名を指定)"lang"で出力する言語を指定します・

<Author>

<Fix host="ScanToolUI" lang="csh">

<Replace name="Remove CommonDialog; from designer code.">
<OldBlock><![CDATA[Remove.CommonDialog]]></OldBlock>

  <NewBlock><![CDATA[ // removed ]></NewBlock>
</Replace>

</Fix>

</Author>


10.メソッドを再生成したい。

"subprogram"で指定をしたメソッドを指定コードで生成します。

<Refactor errorstatus="ignore">
<Reauthor subprogram="%SrcFileStem%.GetComputerName">

 <![CDATA[

   メソッド

 ]]></Reauthor>
</Refactor>

ページTOPへ