SlideShare a Scribd company logo
1 of 10
Download to read offline
VB Migration Partnerのご紹介
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
2 
01: Visual Basic アップグレードウイザードとの比較 
VB MIGRATION PARTNER 
「VB MIGRATION PARTNER」の変換性能を、Visual Studio 2008に付属されている、 「Visual Basic アップグレードウィザード」の変換結果と比較することで御紹介させて頂きます。 
Visual Basic アップグレードウィザード 
VS
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
3 
02: Sample Project(ScreenSizeRec.vbp) 
サンプルは、画面のサイズ、位置を記憶し、次回起動時に前回のサイズ、位置でフォームを表示する ScreenSizeRec.vbpプロジェクトになります。 
ScreenSizeRec.vbpはフォーム(画面)一つで構成されていて、サイズ、位置情報をIniファイルに保存し、読み込む作りになっています。 このIniファイルの読み書きにWindowsAPIを使用しています。 
サイズ、Screen位置情報 
次回起動時にサイズ、 Screen位置情報を取得し 起動 
サイズ、Screen位置情報 
自由に画面の位置、サイズを変更し、画面を閉じる。 
前回のサイズ、Screen位置 どおりに、画面を起動する。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
4 
03: アップグレードウイザードによる変換結果 
変換の結果、出来上がった.netソ リューションは2個のエラーが発 生した状態で出力されました。 
エラーの原因はAsAnyで宣言さ れているパラメータを持ってい るコードが.NETではサポートさ れていないことによります。 
※アップグレードウィザードに よる変換では、この互換性のな くなった部分がネックになりま す。 
詳細Link: 
Declare ステートメントは As Any 型の パラメータをサポートしない 
ms- help://MS.VSCC.v90/MS.MSDNQTR.v90.ja/dv_vbvers/html/fae78a8d- 8978-4fd4-8208-5b7324a8f795.htm 
また、FormのCaptionというプロパティ はVB.NETでは失われているため、 VB6のFormTitleが再現されていま せん。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
5 
03: アップグレードウイザードによる変換結果 
前ページのエラーが発生してい るコード部分です。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
6 
03: VB MIGRATION PARTNERによる変換 
変換が終わると、VBMP上での エラーの有無が、出力されます。 今回の変換ではVBMP上ではエ ラーも警告もない状態です。 
エラーが無いのでメニューから File→Save→ 
Save VB.NETFilesを選び 
.NETソリューションとして保存 します。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
7 
03: VB MIGRATION PARTNERによる変換結果 
VBMPから生成された.NETソリュ ーションを開くと、エラーも警告 も0という結果になりました。 
MSのUpdateToolでは移行されな かったFormのCaptionも正しく移 行されています。 
VB6のFormのCaptionプロパテ ィが、VB.NETでTextプロパティ に移行されているからです。 
Formファイル自体は、 CodeArchitectsのライブラリによ るVB6Formに置き換えられてい ます。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
8 
03: VB MIGRATION PARTNERによる変換結果 
AsAnyの部分はVBMPではどのように変換されたのでしょうか? 
Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA" ( ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpszString As String, ByVal lpFileName As String) As Long 
【VB6コード】 
Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpszString As String, ByVal lpFileName As String) As Integer 
【VBMPから作成されたVB.NETコード】 
AsAnyはAs StringというlpKeyNameにふさわしい型で変換されました。 
また、LongもIntegerに置き換わっています。 
Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA"(ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpszString As String, ByVal lpFileName As String) As Integer 
【MSUpgradeToolから作成されたVB.NETコード】 
AsAnyはそのまま変換されずに移行され、エラーの原因となっています。 
LongについてはIntegerに置き換わっています。
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
9 
03: VB MIGRATION PARTNERによる変換結果 
エラー件数が0件になりましたので、実際に実行してみると、サンプルアプリが動き出します。 
約300以上のWindowsAPIに対応しておりますので、変換効率が高いことが分かります。 
サイズ、Screen位置情報 
次回起動時にサイズ、 Screen位置情報を取得し 起動 
前回のサイズ、Screen位置 どおりに、画面を起動する。 
サイズ、Screen位置情報
©2014 infortech,Inc.ConfidentialandProprietaryInformation. 
www.infortech.co.jp 
PageNo. 
お問い合わせ 
vbmigration@infortech.co.jp 
株式会社インフォーテック〒101-0065 東京都千代田区西神田三丁目1番6号 日本弘道会ビル 2階 
Phone:03-6825-4410 
Fax:03-6825-4402 
URL: www.infortech.co.jp 
10

More Related Content

Similar to Vb migration partnerデモ資料_api

Ec cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナーEc cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナー
Ayumu Kawaguchi
 

Similar to Vb migration partnerデモ資料_api (20)

Web area-phone-home
Web area-phone-homeWeb area-phone-home
Web area-phone-home
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
 
Windows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWSWindows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWS
 
Force.com Canvas アプリケーション
Force.com Canvas アプリケーションForce.com Canvas アプリケーション
Force.com Canvas アプリケーション
 
[2000/10] .NET Technical Briefing 2000 / Visual Studio .NET Part II
[2000/10] .NET Technical Briefing 2000 / Visual Studio .NET Part II[2000/10] .NET Technical Briefing 2000 / Visual Studio .NET Part II
[2000/10] .NET Technical Briefing 2000 / Visual Studio .NET Part II
 
Vco rest api_overview_rev02
Vco rest api_overview_rev02Vco rest api_overview_rev02
Vco rest api_overview_rev02
 
オレ流クラウドデザイン
オレ流クラウドデザインオレ流クラウドデザイン
オレ流クラウドデザイン
 
値変換
値変換値変換
値変換
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
Web appsとcleardbで作る簡単webサイト
Web appsとcleardbで作る簡単webサイトWeb appsとcleardbで作る簡単webサイト
Web appsとcleardbで作る簡単webサイト
 
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
 
Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2
 
進化する Web ~ Progressive Web Apps の実装と応用 ~
進化する Web  ~ Progressive Web Apps の実装と応用 ~進化する Web  ~ Progressive Web Apps の実装と応用 ~
進化する Web ~ Progressive Web Apps の実装と応用 ~
 
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Codeどっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
 
Ec cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナーEc cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナー
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
Angularreflex20141210
Angularreflex20141210Angularreflex20141210
Angularreflex20141210
 

Vb migration partnerデモ資料_api

  • 2. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 2 01: Visual Basic アップグレードウイザードとの比較 VB MIGRATION PARTNER 「VB MIGRATION PARTNER」の変換性能を、Visual Studio 2008に付属されている、 「Visual Basic アップグレードウィザード」の変換結果と比較することで御紹介させて頂きます。 Visual Basic アップグレードウィザード VS
  • 3. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 3 02: Sample Project(ScreenSizeRec.vbp) サンプルは、画面のサイズ、位置を記憶し、次回起動時に前回のサイズ、位置でフォームを表示する ScreenSizeRec.vbpプロジェクトになります。 ScreenSizeRec.vbpはフォーム(画面)一つで構成されていて、サイズ、位置情報をIniファイルに保存し、読み込む作りになっています。 このIniファイルの読み書きにWindowsAPIを使用しています。 サイズ、Screen位置情報 次回起動時にサイズ、 Screen位置情報を取得し 起動 サイズ、Screen位置情報 自由に画面の位置、サイズを変更し、画面を閉じる。 前回のサイズ、Screen位置 どおりに、画面を起動する。
  • 4. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 4 03: アップグレードウイザードによる変換結果 変換の結果、出来上がった.netソ リューションは2個のエラーが発 生した状態で出力されました。 エラーの原因はAsAnyで宣言さ れているパラメータを持ってい るコードが.NETではサポートさ れていないことによります。 ※アップグレードウィザードに よる変換では、この互換性のな くなった部分がネックになりま す。 詳細Link: Declare ステートメントは As Any 型の パラメータをサポートしない ms- help://MS.VSCC.v90/MS.MSDNQTR.v90.ja/dv_vbvers/html/fae78a8d- 8978-4fd4-8208-5b7324a8f795.htm また、FormのCaptionというプロパティ はVB.NETでは失われているため、 VB6のFormTitleが再現されていま せん。
  • 5. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 5 03: アップグレードウイザードによる変換結果 前ページのエラーが発生してい るコード部分です。
  • 6. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 6 03: VB MIGRATION PARTNERによる変換 変換が終わると、VBMP上での エラーの有無が、出力されます。 今回の変換ではVBMP上ではエ ラーも警告もない状態です。 エラーが無いのでメニューから File→Save→ Save VB.NETFilesを選び .NETソリューションとして保存 します。
  • 7. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 7 03: VB MIGRATION PARTNERによる変換結果 VBMPから生成された.NETソリュ ーションを開くと、エラーも警告 も0という結果になりました。 MSのUpdateToolでは移行されな かったFormのCaptionも正しく移 行されています。 VB6のFormのCaptionプロパテ ィが、VB.NETでTextプロパティ に移行されているからです。 Formファイル自体は、 CodeArchitectsのライブラリによ るVB6Formに置き換えられてい ます。
  • 8. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 8 03: VB MIGRATION PARTNERによる変換結果 AsAnyの部分はVBMPではどのように変換されたのでしょうか? Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA" ( ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpszString As String, ByVal lpFileName As String) As Long 【VB6コード】 Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpszString As String, ByVal lpFileName As String) As Integer 【VBMPから作成されたVB.NETコード】 AsAnyはAs StringというlpKeyNameにふさわしい型で変換されました。 また、LongもIntegerに置き換わっています。 Private Declare Function Writestr Lib "KERNEL32" Alias "WritePrivateProfileStringA"(ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpszString As String, ByVal lpFileName As String) As Integer 【MSUpgradeToolから作成されたVB.NETコード】 AsAnyはそのまま変換されずに移行され、エラーの原因となっています。 LongについてはIntegerに置き換わっています。
  • 9. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. 9 03: VB MIGRATION PARTNERによる変換結果 エラー件数が0件になりましたので、実際に実行してみると、サンプルアプリが動き出します。 約300以上のWindowsAPIに対応しておりますので、変換効率が高いことが分かります。 サイズ、Screen位置情報 次回起動時にサイズ、 Screen位置情報を取得し 起動 前回のサイズ、Screen位置 どおりに、画面を起動する。 サイズ、Screen位置情報
  • 10. ©2014 infortech,Inc.ConfidentialandProprietaryInformation. www.infortech.co.jp PageNo. お問い合わせ vbmigration@infortech.co.jp 株式会社インフォーテック〒101-0065 東京都千代田区西神田三丁目1番6号 日本弘道会ビル 2階 Phone:03-6825-4410 Fax:03-6825-4402 URL: www.infortech.co.jp 10