[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/09/10(Fri) 14:19
投稿者名:ハロ
URL :
タイトル:
VB4→VB6への移行
こんにちはハロと申します。

VB4→VB6への移行に関しての質問です。
VB4にはあって、VB6からなくなっているコントロールには
以下のコントロールがあると思います。

アニメーション ボタン
ゲージ  
グリッド
キー ステータス
アウトライン
スピン ボタン
3D チェック ボックス  
3D コマンド ボタン  
3D フレーム  
3D グループ プッシュボタン  
3D オプション ボタン  
3D パネル  

これらは
VB4のプロジェクトをVB6で開いただけでは移行ができない
と考えています。

1)VB4→VB6の作業で注意すべき点等あればどんな情報でも良いので教えてください。
2)VB4付属のクリスタルレポートとからVB6付属のクリスタルレポートへの移行は
  どのような手順になるのでしゅか?(プロジェクトを開くだけで、自動的に
  移行してくれると思って良いのでしょうか?)

投稿時間:2004/09/10(Fri) 14:45
投稿者名:miya
Eメール:
URL :
タイトル:
Re: VB4→VB6への移行
この質問の直前に質問したmiyaと申します。

私もちょうど同じこと調べていましたので
分かっている範囲で回答します。

1) 3D系のコントロールはVB6.0標準で変換すると
  うまくいかないコントロールが存在します。
  例えば、3Dパネルはピクチャボックスに変換されますが、
  文字を表示している場合には消えてしまいます。
  (ピクチャボックスに文字表示機能はない為)

  で、対策としてグレープシティ社の「ActiveThreeD」を使用すると
  同製品のコンバートツールによって変換できるようです。
  実際やってみたところ、だいたいうまく変換できているみたいです。
  (まだ細かくは見ていません)


> こんにちはハロと申します。
>
> VB4→VB6への移行に関しての質問です。
> VB4にはあって、VB6からなくなっているコントロールには
> 以下のコントロールがあると思います。
>
> アニメーション ボタン
> ゲージ  
> グリッド
> キー ステータス
> アウトライン
> スピン ボタン
> 3D チェック ボックス  
> 3D コマンド ボタン  
> 3D フレーム  
> 3D グループ プッシュボタン  
> 3D オプション ボタン  
> 3D パネル  
>
> これらは
> VB4のプロジェクトをVB6で開いただけでは移行ができない
> と考えています。
>
> 1)VB4→VB6の作業で注意すべき点等あればどんな情報でも良いので教えてください。
> 2)VB4付属のクリスタルレポートとからVB6付属のクリスタルレポートへの移行は
>   どのような手順になるのでしゅか?(プロジェクトを開くだけで、自動的に
>   移行してくれると思って良いのでしょうか?)

投稿時間:2004/09/13(Mon) 08:39
投稿者名:ハロ
URL :
タイトル:
Re^2: VB4→VB6への移行
ハロです。
質問がほんと同時期にかぶりましたね。
また、ご回答ありがとうございます。
引き続き何か分かれば教えてください。
> この質問の直前に質問したmiyaと申します。
>
> 私もちょうど同じこと調べていましたので
> 分かっている範囲で回答します。
>
> 1) 3D系のコントロールはVB6.0標準で変換すると
>   うまくいかないコントロールが存在します。
>   例えば、3Dパネルはピクチャボックスに変換されますが、
>   文字を表示している場合には消えてしまいます。
>   (ピクチャボックスに文字表示機能はない為)
>
>   で、対策としてグレープシティ社の「ActiveThreeD」を使用すると
>   同製品のコンバートツールによって変換できるようです。
>   実際やってみたところ、だいたいうまく変換できているみたいです。
>   (まだ細かくは見ていません)
>
>
> > こんにちはハロと申します。
> >
> > VB4→VB6への移行に関しての質問です。
> > VB4にはあって、VB6からなくなっているコントロールには
> > 以下のコントロールがあると思います。
> >
> > アニメーション ボタン
> > ゲージ  
> > グリッド
> > キー ステータス
> > アウトライン
> > スピン ボタン
> > 3D チェック ボックス  
> > 3D コマンド ボタン  
> > 3D フレーム  
> > 3D グループ プッシュボタン  
> > 3D オプション ボタン  
> > 3D パネル  
> >
> > これらは
> > VB4のプロジェクトをVB6で開いただけでは移行ができない
> > と考えています。
> >
> > 1)VB4→VB6の作業で注意すべき点等あればどんな情報でも良いので教えてください。
> > 2)VB4付属のクリスタルレポートとからVB6付属のクリスタルレポートへの移行は
> >   どのような手順になるのでしゅか?(プロジェクトを開くだけで、自動的に
> >   移行してくれると思って良いのでしょうか?)

投稿時間:2004/09/13(Mon) 12:22
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: VB4→VB6への移行
VB4に付属していた
    ANIBTN32.OCX
    GAUGE32.OCX
    GRID32.OCX
    KEYSTA32.OCX
    MSOUTL32.OCX
    SPIN32.OCX
    THREED32.OCX
および、VB5に付属していた
    DBGRID32.OCX
    MSCHART.OCX
については、VBのセットアップ時にはインストールされませんが、移行作業用のために、
英語版および日本語版のコントロールとヘルプが、CD-ROMの奥深くに眠っています。
(詳細は README.TXT を御覧下さい)

まずはこれらをインストールして、VB4プロジェクトをアップグレードしてみてください。
その後で、個々のコントロールを、VB6版のコントロール群に置き換えていくと良いでしょう。


> 3D チェック ボックス
> 3D コマンド ボタン
> 3D フレーム
> 3D グループ プッシュボタン
> 3D オプション ボタン
> 3D パネル
THREED32.OCXに相当するコントロールは、特に用意されていません。
「3Dでの表現」を必ずしも必要としないのであれば、これらのコントロールを
標準コントロールに手動で置き換えていくのも、一つの選択肢となりえるかと。

VB4当時は、コマンドボタンに色をつける為に、3D コマンドボタンが利用される
ケースも多かったのですが、現在では、標準コマンドボタンのStyleプロパティを
変更することで、BackColorを変更できるようになっています。もしもForeColorも
変更したいのであれば、Styleを変更したCheckBoxがコマンドボタンの代用となります。

なお、THREED32.OCXは元々、SS社(米国 Sheridan Software Systems)から
OEM提供されていた、機能限定版のコントロール群です。市販の「ActiveThreeD」や
「ActiveThreeD Plus」が、その製品版となりますので、そちらを利用するという
選択肢もあります。

これら ActiveThreeDシリーズに関しては、miyaさんも書かれていますように、
グレープシティ株式会社によって日本語化が行われています。下記を参照してください。
hhttp://www.grapecity.com/Japan/


> スピン ボタン
SPIN32.OCX の代用として、MSCOMCT2.OCX に含まれている「UpDownコントロール」を
使う事が出来ます。なお、VB6のヘルプには下記の記述があります。
》 Visual Basic 4.0 のスピン ボタン (SpinButton) コントロールの代わりに
》 アップダウン コントロールを使ってください。


> アニメーション ボタン
ANIBTN32.OCX に相当するコントロールも、特に用意されていません。
(Animation コントロールならありますが、これは別物です)
同等機能を自作するか、実装を諦めてください。

なお、ANIBTN32.OCXは元々、Desaware社からOEM提供されていたコントロールなので、
こちらも、市販パッケージに移行するという選択肢があります。


> ゲージ
GAUGE32.OCX ほどの表現力はありませんが、COMCTL32.OCX に含まれている
「ProgressBarコントロール」である程度の代用が効きます。ゲージとの互換性は
ありませんが、多くのアプリケーションでは、このProgressBarコントロールを
進捗表示に利用していますので、可能であれば、ProgressBarに乗り換える事を
個人的にはお奨めします。


> グリッド
GRID32.OCX に近い機能を持っているのは、MSFlexGrid コントロール、および
MSHFlexGrid コントロールです。互換性はありませんが、プロパティやメソッドには
共通する部分も多いので、移行作業は、さほど難しくは無いと思います。


> キー ステータス
KEYSTA32.OCX の代替コントロールはありませんが、CAPS LOCK等の状態を表示するために、
StatusBarコントロールを利用する事ができます。ただし、状態を変更させる事は
できません。もしも状態を変更させたいなら、APIの呼び出しが必要となります。


> アウトライン
MSOUTL32.OCX の互換コントロールはありませんが、COMCTL32.OCX に含まれている
TreeViewコントロールを使うことで、階層表示が可能です。


それから、今回の質問には含まれていませんでしたが、グラフコントロール(Graph32.OCX)も
現在ではサポートされていないコントロールです。これに関しては、VB6の
チャートコントロール(MSChart.OCX)にて代用してみてください。


> 1)VB4→VB6の作業で注意すべき点等あればどんな情報でも良いので教えてください。
まずは、ここからでしょう。
hhttp://support.microsoft.com/default.aspx?scid=kb;ja;412580

それと、(もしお持ちであれば)VB5のヘルプおよびBooks Onlineも参照してみてください。
そこには、VB4→VB5への移行に関する資料が掲載されていたと思います。
また、VB6のヘルプにも、VB5からの新機能が掲載されていますので、
これらを併せて読めば、VB4→VB6への作業を進める事ができるかと。


あと、以降元となるVB4側は、Update2等を適用して、最新版にしておいてください。
hhttp://www.microsoft.com/japan/msdn/vs_previous/vbasic/Update/vb4update.htm

VB6側については、こちら。
hhttp://www.microsoft.com/japan/msdn/vstudio/downloads/sp/VS6SP.asp
hhttp://www.microsoft.com/japan/msdn/vstudio/downloads/sp/VS6SP6.asp


それ以外の注意点としては、「MDAC(Microsoft Data Access Components)」の存在があります。
VB4の頃は、開発元のIEバージョンと、配布先のIEバージョンの違いによって、インストール時に
問題が出る事がありましたが、VB6の場合は、この「MDAC」の違いが重要になってきます。

・基本的に、MDACのバージョンダウンは出来ない。
・VBのService Pack等では、MDACは自動的には更新されない。手動で更新する事。
・最近のOSdは、特定バージョンのMDACが始めからインストールされている。
・下位バージョンのMDAC環境でコンパイルされたexeは、上位バージョンのMDAC環境でも動作する。
・MDAC 2.5以上には、JETやODBC関連のコンポーネントが含まれていない。


> 2)VB4付属のクリスタルレポートとからVB6付属のクリスタルレポートへの移行は
>   どのような手順になるのでしゅか?
# ……でしゅか → でしょうか? (^^;

VB6付属のクリスタルレポートのメジャーバージョンは、VB5付属版の物と
全く同一ですので、VB5版からであればそのまま利用できるはずですが、
VB4版クリスタルレポートからの移行に付いては、私は経験が無いのでわかりません。

ただ、機能的な違いはさほどありませんので、ソースコード自体の修正は、
さほど多くないとは思います。問題は、レポートファイルが、新バージョンで
利用できるかどうか…でしょうか。

投稿時間:2004/09/14(Tue) 11:38
投稿者名:ハロ
URL :
タイトル:
Re^2: VB4→VB6への移行
ハロです。

大変丁寧な返信をありがとうございます。
ほとんどVB4→VB6のバイブルを頂けた感じです。

グリッドが一番気になっていましたが、何とかなる気がしてきました。
その他は、あまり使用頻度が高くなかったり、見かけにこだわらなければ
代替手段があったり...というふうに感じました。(アプリよりますが...)

大変参考になりました。
ありがとうございました。
> VB4に付属していた
>     ANIBTN32.OCX
>     GAUGE32.OCX
>     GRID32.OCX
>     KEYSTA32.OCX
>     MSOUTL32.OCX
>     SPIN32.OCX
>     THREED32.OCX
> および、VB5に付属していた
>     DBGRID32.OCX
>     MSCHART.OCX
> については、VBのセットアップ時にはインストールされませんが、移行作業用のために、
> 英語版および日本語版のコントロールとヘルプが、CD-ROMの奥深くに眠っています。
> (詳細は README.TXT を御覧下さい)
>
> まずはこれらをインストールして、VB4プロジェクトをアップグレードしてみてください。
> その後で、個々のコントロールを、VB6版のコントロール群に置き換えていくと良いでしょう。
>
>
> > 3D チェック ボックス
> > 3D コマンド ボタン
> > 3D フレーム
> > 3D グループ プッシュボタン
> > 3D オプション ボタン
> > 3D パネル
> THREED32.OCXに相当するコントロールは、特に用意されていません。
> 「3Dでの表現」を必ずしも必要としないのであれば、これらのコントロールを
> 標準コントロールに手動で置き換えていくのも、一つの選択肢となりえるかと。
>
> VB4当時は、コマンドボタンに色をつける為に、3D コマンドボタンが利用される
> ケースも多かったのですが、現在では、標準コマンドボタンのStyleプロパティを
> 変更することで、BackColorを変更できるようになっています。もしもForeColorも
> 変更したいのであれば、Styleを変更したCheckBoxがコマンドボタンの代用となります。
>
> なお、THREED32.OCXは元々、SS社(米国 Sheridan Software Systems)から
> OEM提供されていた、機能限定版のコントロール群です。市販の「ActiveThreeD」や
> 「ActiveThreeD Plus」が、その製品版となりますので、そちらを利用するという
> 選択肢もあります。
>
> これら ActiveThreeDシリーズに関しては、miyaさんも書かれていますように、
> グレープシティ株式会社によって日本語化が行われています。下記を参照してください。
> hhttp://www.grapecity.com/Japan/
>
>
> > スピン ボタン
> SPIN32.OCX の代用として、MSCOMCT2.OCX に含まれている「UpDownコントロール」を
> 使う事が出来ます。なお、VB6のヘルプには下記の記述があります。
> 》 Visual Basic 4.0 のスピン ボタン (SpinButton) コントロールの代わりに
> 》 アップダウン コントロールを使ってください。
>
>
> > アニメーション ボタン
> ANIBTN32.OCX に相当するコントロールも、特に用意されていません。
> (Animation コントロールならありますが、これは別物です)
> 同等機能を自作するか、実装を諦めてください。
>
> なお、ANIBTN32.OCXは元々、Desaware社からOEM提供されていたコントロールなので、
> こちらも、市販パッケージに移行するという選択肢があります。
>
>
> > ゲージ
> GAUGE32.OCX ほどの表現力はありませんが、COMCTL32.OCX に含まれている
> 「ProgressBarコントロール」である程度の代用が効きます。ゲージとの互換性は
> ありませんが、多くのアプリケーションでは、このProgressBarコントロールを
> 進捗表示に利用していますので、可能であれば、ProgressBarに乗り換える事を
> 個人的にはお奨めします。
>
>
> > グリッド
> GRID32.OCX に近い機能を持っているのは、MSFlexGrid コントロール、および
> MSHFlexGrid コントロールです。互換性はありませんが、プロパティやメソッドには
> 共通する部分も多いので、移行作業は、さほど難しくは無いと思います。
>
>
> > キー ステータス
> KEYSTA32.OCX の代替コントロールはありませんが、CAPS LOCK等の状態を表示するために、
> StatusBarコントロールを利用する事ができます。ただし、状態を変更させる事は
> できません。もしも状態を変更させたいなら、APIの呼び出しが必要となります。
>
>
> > アウトライン
> MSOUTL32.OCX の互換コントロールはありませんが、COMCTL32.OCX に含まれている
> TreeViewコントロールを使うことで、階層表示が可能です。
>
>
> それから、今回の質問には含まれていませんでしたが、グラフコントロール(Graph32.OCX)も
> 現在ではサポートされていないコントロールです。これに関しては、VB6の
> チャートコントロール(MSChart.OCX)にて代用してみてください。
>
>
> > 1)VB4→VB6の作業で注意すべき点等あればどんな情報でも良いので教えてください。
> まずは、ここからでしょう。
> hhttp://support.microsoft.com/default.aspx?scid=kb;ja;412580
>
> それと、(もしお持ちであれば)VB5のヘルプおよびBooks Onlineも参照してみてください。
> そこには、VB4→VB5への移行に関する資料が掲載されていたと思います。
> また、VB6のヘルプにも、VB5からの新機能が掲載されていますので、
> これらを併せて読めば、VB4→VB6への作業を進める事ができるかと。
>
>
> あと、以降元となるVB4側は、Update2等を適用して、最新版にしておいてください。
> hhttp://www.microsoft.com/japan/msdn/vs_previous/vbasic/Update/vb4update.htm
>
> VB6側については、こちら。
> hhttp://www.microsoft.com/japan/msdn/vstudio/downloads/sp/VS6SP.asp
> hhttp://www.microsoft.com/japan/msdn/vstudio/downloads/sp/VS6SP6.asp
>
>
> それ以外の注意点としては、「MDAC(Microsoft Data Access Components)」の存在があります。
> VB4の頃は、開発元のIEバージョンと、配布先のIEバージョンの違いによって、インストール時に
> 問題が出る事がありましたが、VB6の場合は、この「MDAC」の違いが重要になってきます。
>
> ・基本的に、MDACのバージョンダウンは出来ない。
> ・VBのService Pack等では、MDACは自動的には更新されない。手動で更新する事。
> ・最近のOSdは、特定バージョンのMDACが始めからインストールされている。
> ・下位バージョンのMDAC環境でコンパイルされたexeは、上位バージョンのMDAC環境でも動作する。
> ・MDAC 2.5以上には、JETやODBC関連のコンポーネントが含まれていない。
>
>
> > 2)VB4付属のクリスタルレポートとからVB6付属のクリスタルレポートへの移行は
> >   どのような手順になるのでしゅか?
> # ……でしゅか → でしょうか? (^^;
>
> VB6付属のクリスタルレポートのメジャーバージョンは、VB5付属版の物と
> 全く同一ですので、VB5版からであればそのまま利用できるはずですが、
> VB4版クリスタルレポートからの移行に付いては、私は経験が無いのでわかりません。
>
> ただ、機能的な違いはさほどありませんので、ソースコード自体の修正は、
> さほど多くないとは思います。問題は、レポートファイルが、新バージョンで
> 利用できるかどうか…でしょうか。