VB6 から VB2015.NET へのマイグレーション

ごくごく触りのメモ。

VB6 から VB.NET(現在の最新バージョンは 2017 だが、今回は諸事情で 2015 がターゲット)へのマイグレーションを行う場合。

まず、VB2015.NET は VB6 のプロジェクトファイル(拡張子 .vbp のファイル)を開けないので、一旦 VB2008.NET で upgrade を行う。
VB2008.NET で VBP ファイルを開くと Upgrade Wizard が開始されるので、まあ、ずっと Next していけばいい。
VB6→VB.NET の upgrade が終了したら、Save All して終了。

パスを自分で変更していなければ、元のプロジェクトのあったディレクトリに「プロジェクト名.NET」という名前で VB.NET プロジェクトのファイル群を格納したディレクトリができている。

そのディレクトリの下のソリューションファイル(.sln ファイル)を開くと、今度は VB2008.NET→VB2015.NET への upgrade が始まる。
これで、もう二度と VB2008.NET では開けない形になるが、ま、別に VB2008.NET で何かすることはないからそれでOK。

あとは手動でエラーと警告を消していこう。

配列のエラーとかむっちゃ出て萎える(^^;

代替のメソッドがあるものは良いが、LenB関数(文字列のバイト数を取得する関数)のように代替できるものがない場合は、

Private Shared Function LenB(ByVal str As String) As Integer
    'Shift JISに変換したときに必要なバイト数を返す
    Return System.Text.Encoding.GetEncoding(932).GetByteCount(str)
End Function

のような関数を別途作成して対応することになる。
(ソース例は「DOBON.NET プログラミング道」より。ありがとうございます)

まあ、こんな調子で地道に消していくしかない。
一応、Web 上にも色々情報はあるので参考にはなるが、そのまま適用できないもののほうが多い。ほんと、自分の脳みそを使って地道に作業していこう。

今マイグレーションしているシステムだと、平均すると、ひとつのプロジェクトで 20くらいのエラーと 30くらいの警告が出てくる。中には500のエラーと100の警告の出たプロジェクトもあるけど(^^;
それを地道に手動で直していくことになる(そして、そのプロジェクトが 20くらいある・・・先は長いなあ・・・)。

トラックバック(0)

このブログ記事を参照しているブログ一覧: VB6 から VB2015.NET へのマイグレーション

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/4363

コメントする

このブログ記事について

このページは、shinodaが2017年4月 7日 16:47に書いたブログ記事です。

ひとつ前のブログ記事は「広島でお好み焼と言えばやはり「得」である」です。

次のブログ記事は「意地悪な目で見ている未来」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら