付録2.Visual Basic 4.0 から 6.0 への移行の手順


 ここ (付録2) の見出しの一覧

 Visual Basic 4.0 の 32 ビット版からの移行の手順Visual Basic 4.0 の 16 ビット版からの移行の手順


 ここには、Visual Basic 4.0 で開発したアプリケーションソフトウェア資産 (ソースプログラムなど) を Visual Basic 6.0 用のものに移行させる手順が書いてあります。なお、Visual Basic 4.0 と MANDALA を併用して開発したソフトウェア資産の移行の手順については、「MANDALA入門コースの手引き」を参照してください。

 Visual Basic 4.0 には、16 ビット版32 ビット版の2種類があり、これらのどちらから Visual Basic 6.0 に移行させるのかによって、だいぶ手順が異なります。そこで、それぞれの場合に分けて詳しく説明します。

(a) Visual Basic 4.0 の 32 ビット版からの移行の手順

 次の手順に従って資産を移行させてください。32 ビット版の Visual Basic 4.0 から Visual Basic 6.0 へは、基本的に上位方向の互換性があるので移行作業は簡単です。

(1) バックアップ

 まず最初に、移行前のソフトウェア資産のバックアップを取ってください。プロジェクトファイルやフォームモジュールやコードモジュールなど全てのソフトウェア資産のバックアップを取るわけです。

 Visual Basic 6.0 用の資産に変換した後で、何らかの都合で元の資産に戻したいと思っても、それをすることは面倒ですから、ここでバックアップを取っておくことをお勧めいたします。

(2) 資産の変換

 旧プロジェクトを Visual Basic 6.0 で開いてください。この操作に引き続いて、Visual Basic からの問合わせに答えることで、旧ソフトウェア資産のを新形式の資産に変換することができます。

(3) 新資産の保存

 プロジェクトの上書き保存の指示を与えて新ソフトウェア資産を保存してください。

(4) 完全コンパイルの実施と新資産の保存

 Visual Basic 6.0 のメインウィンドウの実行(R) というメニュータイトルを開いて、その中の完全コンパイル後に開始(F) というメニュー項目をクリックしてください。単なる開始(S) では、動作しない部分の文法チェックがなされませんから、必ず完全完全コンパイル後に開始(F) を指定してください。

 32 ビット版の Visual Basic 4.0 から Visual Basic 6.0 へは、基本的に上位方向の互換性があるので、そのままで動作するはずですが、もしもエラーが通知されたら、そのエラーを修正してください。

 最後に、念のために再度プロジェクトの上書き保存の指示を与えて新資産を保存してください。これで、移行作業は完了です。

(b) Visual Basic 4.0 の 16 ビット版からの移行の手順

 Visual Basic 6.0 は、32 ビット対応のアプリケーション開発専用ですから、16 ビット版に相当するものはありません。そこで、16 ビット版の Visual Basic 4.0 から Visual Basic 6.0 に移行させるには、16 ビット版から 32 ビット版への変換作業が必要になります。世の中では、32 ビット OS (Windows 2000 や Windows NT や Windows98 や Windows95) の上で動作する 32 ビットアプリケーションが標準になっていますから、この機会に 32 ビット版への変換作業を行ってください。

 次の手順に従って資産を移行させてください。16 ビット版の Visual Basic 4.0 から Visual Basic 6.0 へは、次の (2) (3) (5) の非互換点があるので、これらに対する処置が必要です。

(1) バックアップ

 まず最初に、移行前のソフトウェア資産のバックアップを取ってください。プロジェクトファイルやフォームモジュールやコードモジュールなど全てのソフトウェア資産のバックアップを取るわけです。

 Visual Basic 6.0 の資産に変換した後で、何らかの都合で元の資産に戻したいと思っても、それをすることは面倒ですから、ここでバックアップを取っておくことをお勧めいたします。

(2) ユニコードへの対応

 Visual Basic 4.0 の 32 ビット版は、文字列がユニコードで表現されるようになりました。したがって、次の関数に非互換点が発生しました。

InStrB

InStrB$

LenB

LeftB

LeftB$

MidB

MidB$

RightB

RightB$

 これらの関数を使っているところは、全て Visual Basic の文字列の検索機能で洗い出した上で、何らかの処置を行うことが必要です。

 まず、洗い出したところのうち文字単位の処理をしている部分は、関数名から B を取り除いた関数 (例えば LeftB$ ならば Left$) に置き換えてください。

 そして、残りのバイト単位の処理をしている部分は、その処理内容に応じた何らかの変更が必要です。例えば、MANDALA の Ae_Proc.bas または Ae_Wid.bas というコードモジュールの中に提供されている関数 LenWid、LeftWid$、MidWid$、RightWid$ に置き換えるのも一つの方法です。

(3) 32 ビット対応の OCX への移行のための調査

 Visual Basic の 32 ビット版では、従来の 16 ビット対応の VBX は使えません。32 ビット対応の OCX に移行させることが必要です。この移行の手順については、互換性を持つ 32 ビット対応の OCX が提供されている場合には、それぞれの OCX の提供元の説明を参照してください。通常は次の (4) の手順によって移行させることができるようになっているはずですから、そのことを確認してください。

 互換性を持つ 32 ビット対応の OCX が提供されていない場合には、そのままでは移行させられません。ただし、Visual Basic に添付されている標準提供の OCX が充実してきていますので、これで間に合うことも結構あります。従来の VBX の機能と同様のものが通常のコントロールや標準提供の OCX で実現できる場合には、VBX をそれらに置き換えるのも一つの方法です。

 なお、適当なコントロール (または VBX) に置き換えることができない場合には、単純移行はできません。

(4) 資産の変換

 旧プロジェクトを Visual Basic 6.0 で開いてください。この操作に引き続いて、Visual Basic からの問合わせに答えることで、旧資産を新形式の資産に変換することができます。

(5) 32 ビット対応の DLL への移行

 アプリケーションプログラムの中から DLL を一つも呼び出していない場合、この作業は不要です。

 32 ビット版の Visual Basic では、従来の 16 ビット対応の DLL は使えません。32 ビット対応の DLL を使うように変更することが必要です。この移行の手順については、それぞれの DLL の説明を参照してください。

 少なくとも Visual Basic の文字列の検索機能で Declare という文字列を洗い出した上で、DLL の宣言の中のライブラリ名などの変更が必要です。更に、もしも DLL の呼出しインタフェースやパラメタのデータ型などが変更されている場合には、その修正を施してください。

(6) 新資産の保存

 プロジェクトの上書き保存の指示を与えて新資産を保存してください。

(7) 完全コンパイルの実施と新資産の保存

 Visual Basic 6.0 のメインウィンドウの実行(R) というメニュータイトルを開いて、その中の完全コンパイル後に開始(F) というメニュー項目をクリックしてください。単なる開始(S) では、動作しない部分の文法チェックがなされませんから、必ず完全コンパイル後に開始(F) を指定してください。

 そして、もしももしも何らかのエラーがあればエラーが通知されたら、そのエラーを修正してください。

 最後に、念のために再度プロジェクトの上書き保存の指示を与えて新資産を保存してください。これで、移行作業は完了です。

 


eee, SSS/Win, RRR は、ウッドランド株式会社から販売されている製品です。
MANDALA は、アプリテック株式会社の商標として登録の申請を済ませています。
Visual Basic, Windows, Windows NT, ActiveX は、米国マイクロソフト社の商標です。
(ME00V652)

 

 

 



Copyright (C) 1995-2000 By AppliTech, Inc. All Rights Reserved.