VB6開発環境をWindows 10にインストールする手順

土曜日 , 10, 11月 2018 Leave a comment

Windows 10上にVB6の開発環境を構築する必要があり作業を行ったのですが、そのときいろいろな問題が発生しました。
インターネット上には、Windows 10へVB6をインストールための様々な情報が公開されていますが、実際に試してみると公開されている情報と違う箇所や端折れる手順などがありました。
今回、実際に行った一連の作業を記事にまとめました。

確認を行った環境

  • Windows 10 Pro Version 1803 (64ビット版)
  • Visual Basic 6.0 Enterprise Edition
    Visual Studioサブスクリプション(https://docs.microsoft.com/ja-jp/visualstudio/subscriptions/ )で提供されているもの

作業の流れ

  • VB6本体のセットアップ
  • VB6サービスパック(SP6)の適用
  • VB6SP6 累積的な更新プログラムの適用
  • VB6の起動とプロジェクトの読み込み

※注意
Visual Basic 6.0は、開発元のMicrosoftのサポートが終了した開発環境です。
最悪の場合、システムやデータに復旧不可能なダメージを与える可能性があります。
実際の導入にあたっては細心の注意を払い、ご自身の責任においてお試し下さい。


  1. Visual Basic 6.0のセットアップ

VB6のsetup.exeを「管理者として実行」で起動

セットアップウィザードが表示されたら、「次へ」ボタンをクリックします。

clip_image001

使用許諾契約書の内容を確認し「同意します」を選択、「次へ」ボタンをクリックします。

clip_image002

プロダクトIDとユーザ名、会社名を入力し、「次へ」ボタンをクリックします。

clip_image003

「Visual Basic 6.6 Enterprise Editionのセットアップ」を選択し、「次へ」ボタンをクリックします。
(エディションによって画面が変化すると思います)

clip_image004

共有フォルダをデフォルト値のまま、「次へ」ボタンをクリックします。

clip_image005

セットアップ画面が表示されたら、「継続」ボタンをクリックします。

clip_image006

プロダクトIDを確認し、「OK」ボタンをクリックします。

clip_image007

「既にセットアップされているコンポーネントを検索しています。」と表示されたら、処理が終了するまで待機します。(環境によっては時間がかかります)

clip_image008

セットアップ方法が表示されたら、「カスタム」ボタンをクリックします。

clip_image009

表示されたオプションから「データアクセス」を選択した状態で「オプションの変更」ボタンをクリックします。

※インターネット上で公開されている情報には、VB6のセットアップを複数回実行し段階的にセットアップを行う方法が紹介されており、初回時には「データアクセス」と「グラフィックス」のチェックをはずすと記載されている記事もありましたが、試した範囲では「グラフィックス」にチェックを入れた状態でも正常にセットアップが完了しました。

clip_image010

clip_image011

データアクセスのオプション一覧から「ADO、RDSおよびOLE DBプロバイダ」と「リモートデータオブジェクトとコントロール」のチェックをはずし、「OK」ボタンをクリックします。

※「ADO、RDSおよびOLE DBプロバイダ」と「リモートデータオブジェクトとコントロール」をチェックしたままセットアップを行うと、セットアップの途中で処理が固まります。

clip_image012

元のオプション一覧が表示されたら、「継続」ボタンをクリックします。

clip_image010[1]

必要なファイルのコピーがはじまるので完了まで待機します。

clip_image013

セットアップが完了するとWindowsの再起動を求められるので「Windowsの再起動」ボタンをクリックします。

※しばらく待っても完了画面が表示されない場合、処理が固まっている場合があります。
その時は、タスクマネージャなどからセットアップを強制終了させてください。

clip_image014[5]


Windowsの再起動後、自動的にVisual Basicのセットアップが起動します。
必要に応じて「MSDNのセットアップ」にチェックを入れて、セットアップを行います。
MSDNライブラリのセットアップが完了または必要がない場合、「次へ」ボタンをクリックします。

clip_image015

サーバー製品のセットアップを行う場合、必要なコンポーネントを選択し「セットアップ」ボタンをクリックします。
サーバー製品のセットアップが完了または必要がない場合、「次へ」ボタンをクリックします。

clip_image016

「今すぐ登録」のチェックをはずして、「完了」ボタンをクリックします。

clip_image017

サポートが終了した開発環境のためか「今すぐ登録」にチェックして「完了」ボタンを押してもページは表示されません。

clip_image019



  1. VB6SP6を適用

Microsoftのサイトより『Visual Basic 6.0 Service Pack 6』をダウンロードしファイルを保存します。(https://www.microsoft.com/ja-jp/download/details.aspx?id=5721 )

ダウンロードしたVs6sp6B.exeを起動します。

展開先のディレクトリ指定を求められるので、適当なディレクトリを指定し「OK」ボタンをクリックします。

clip_image020

ひとつ前のステップで指定した展開先のフォルダに含まれるSetupsp6.exeを「管理者として実行」で起動します。

セットアップウイザードが表示されたら 、「継続」ボタンをクリックします。

clip_image021

使用許諾の確認が表示されるので内容を確認し、「同意します」ボタンをクリックします。

clip_image022

ファイルのコピーがはじまるので完了まで待機します。

clip_image023

ファイルのコピー中、置き換えの確認が表示された場合、任意の選択を行います。
(私は「いいえ」を選び既に導入されているものを残すようにしています。)

clip_image024

完了メッセージが表示されたら、「OK」ボタンをクリックしセットアップを終了します。

clip_image025


  1. VB6SP6の累積的な更新プログラムを適用

Microsoftのサイトより『Microsoft Visual Basic 6.0 Service Pack 6 累積的な更新プログラム』をダウンロードしファイルを保存します。( https://www.microsoft.com/ja-jp/download/details.aspx?id=7030 )

ダウンロードしたVB60SP6-KB2708437-x86-JPN.msiを起動します。

起動すると使用許諾契約書が表示されるので、内容を確認し「同意する」を選択、「次へ」ボタンをクリックします。

clip_image026

ファイルのコピーやレジストリの設定がはじまるので完了するまで待機します。

clip_image027

完了メッセージが表示されたら、「完了」ボタンをクリックし、セットアップを終了します。

image

  1. VB6の起動とプロジェクトの読み込み

インストール完了後、初回起動を一般ユーザから行うと「システムレジストリへのアクセスでエラーが発生しました」「オートメーションエラー」などのエラーが発生することがあります。

image

この現象を回避するために、初回起動は「管理者として実行」で起動します。


既存のプロジェクトを開くと、プロジェクトの読み込み中に「MSCOMCTL.OCXを読み込めません。」などのメッセージが表示されることがあります。

image


調べてみると、「Microsoft Windows Common Controls」などよく使われるコンポーネントの参照が外れた状態でプロジェクトが読み込まれてしまうためのようです。
この場合は、プロジェクトの読み込み続行の確認ダイアログに対し「はい」を選択し、いったんプロジェクトの読み込みを最後まで完了させてしまいます。

image

読み込みが完了した時点でプロジェクトが参照しているコンポーネントや参照設定を更新し、プロジェクトの保存を行うと次回読み込みからエラーが発生しなくなるようです。

プロジェクトが参照しているコントロールの一覧は、メニューバーの[プロジェクト]-[コンポーネント]-[コントロール]タブから確認することができます。

image


同様に、プロジェクトが参照しているライブラリの設定がおかしくなっているためにエラーやコンパイルに失敗することがあります。
その時は、参照設定でライブラリの参照を正しい情報に変更するとエラーが発生しなくなるようです。

プロジェクトが参照しているライブラリの一覧は、メニューバーの[プロジェクト]-[参照設定]から確認することができます。

image

VB6本体のセットアップ時にインストールしなかった機能について

VB6本体の導入時にセットアップしなかった機能は使えないのではないかと思っていたのですが、どうもどこからかライブラリがインストールされてしまうようです。
今回はデータアクセスオプションのチェックをはずしてインストールしましたが、VB6SP6の累積的な更新プログラムを適用した後、試した範囲では問題なく使用することができました。

手順ごとにライブラリの状態を調べてみると、VB6SP6を適用したとき、VB6SP6の累積的な更新プログラムを適用したときに追加でインストールされているようです。

例として、ADOまわりのライブラリ、RDOまわりを掲載します。

  • ADO周り

    VB6本体導入直後の状態
    image
    VB6SP6累積的な更新プログラム適用後の状態(ライブラリが増えている)
    image

  • RDO周り

    VB6本体導入直後の状態(RDOが存在しない)
    image
    VB6SP6累積的な更新プログラム適用後の状態(RDOが追加されている)image

データアクセス機能について補足すると、VB6本体のセットアップを複数回実行し段階的にセットアップを行う方法を試し、2回目のセットアップで「データアクセス」を追加インストールする(途中でセットアップが止まるので強制終了)と、Data Environmentまわりの設定がうまくいかないようです。

プロジェクトの参照設定を確認すると「Microsoft Data Environment Instance」が64ビット環境では存在しないC:\Program Files\Common Files\designer\MSDERUN.DLLを参照して「参照不可」状態に陥っていることが確認できます。
無理やり設定を変更するとVB6上でデザイナーこそ使用できるようになるものの操作中にオートメーションエラーが頻発するなどの不具合が発生します。

VB6SP6の累積的な更新プログラムで導入させると、このような問題は起きず、サービスパックも正しく適用された状態で使用することができます。