image私が公開している Light Cutter 5 というフリーソフトが、Windows 8 の登場で、ある機能が使えなくなりました。それは Winキー + C というショートカットキーです。このショートカットキーが Windows 8 では標準の「チャームの表示」に割当たってしまったので、Light Cutter の実行が出来なくなってしまいました。

これを改善するべく、Light Cutter 5 をバージョンアップしたいのですが、このソフトウェアは 学生時代に Visual Basic 6.0 で開発していて、もう開発環境が残っていません。

しかしマイクロソフトの驚異の互換性によって、VB6で作ったアプリでも、最新の Windows 8 でもちゃんと動作するので、ここは是非とも開発環境をもう一度用意して、バージョンアップをしたいところです。

 

Windows 8 32ビットで Visual Basic 6.0 開発環境を構築

clip_image001

IDE(開発環境)は、Windows 7 で一時期サポートされていましたが、現在はサポートが無くなっています。ただし、「カスタマイズされた契約」でサポートがうけられる場合があるとのこと。つまり、「基本的には動くが保証は出来ないよ。」という感じだと思います。

※このページの下の方にある dll に注意して、そもそもランタイムも動作しなくなっている機能については、もう Windows 8 で開発出来ないし使用できないので、"ラストスパート" するかどうか?先に判断が必要ですね。

IDE は Windows 7 でも 64ビットはダメで、32ビットのみ動作していた様子。全く同様の記述がされている Windows 8 でも、32ビットなら動作するはず。私のPCは全て64ビットなので、Hyper-V や VMWare などの仮想PCに Windows 8 32ビットをインストールして、開発環境を整えることにします。

 

必要なディスク・ISOイメージを用意

Visual Baisc 6.0 開発に必要なものを整理します。エディションは問わないはずなので参考まで。それぞれ、msdn など自分が持っている物を用意します。(パッケージは購入できないため、持っていない人は msdn に契約してダウンロードします)

  • Windows 8 32ビット ( Pro 日本語 )
  • Visual Basic 6.0 ( Enterprise 日本語 )
  • Visual Studio Installer 1.1 (※)
  • Visual SourceSafe 2005 (※)
  • Team Explorer for Visual Studio 2012 (※)

※追加のソフトは必要に応じて使用します。

今回、Visual Basic 6.0 で作成した exe を Visual Studio Installer 1.1 でインストーラを作成したり、インストール用のマージモジュールを作成することで、最新の Visual Studio で作成したexe とともに配布できるようにしたり、ということを行う予定なのですが、Visual Studio Installer 1.1 が現在、どこからもダウンロードできないですね。

私は、大学時代にパッケージを買ったときにちゃんとマイクロソフトにユーザー登録をしたので、Visual Studio Installer 1.1 のディスクが送られてきて、今でもそれを持っているので、それを使います。

(※当時はディストリビューションウィザードというソフトでセットアップを作る時代から、現在の Windows インストーラー対応の msi を作れる Visual Studio Installer への移行時期でした。その後、Visual Studio に統合され、Visual Studio 2010 まで標準機能として搭載。現在では Visual Studio 2012 には廃止されて含まれなくなったので、代わりに Install Shield 無料版などを使いますが、いずれも VB6 のセットアップは作成出来ません。)

また、ソース管理は、Visual SourceSafe 2005 で以前のバージョンを取得して、Team Explorere で最新の Team Foundation Server にファイルをアップする事にします。

Windows 8 32ビットのインストール

image

VB6自体がもはや現代では半端無く軽いはずなので、たぶん環境は何でも大丈夫だと思うのですが、こんな感じで組んでみました。32ビットだとメモリが多すぎても使えないので、注意ですね。

  • プロセッサ2(プロセッサごとのコア数 1)
  • メモリ 2GB
  • ディスク 60GB(すぐに割り当てない、単一のファイル)

※インストールについては、ISOイメージ(DVDディスク) から Windows 8を新規インストールする方法を参照~

image

マイクロソフトアカウント(Live ID)は普段使用している物を使ってみます。これでお気に入りとかを簡単に共有できるので、仮想PCで開発していても不便は無いはずです。

無事起動したら、一度仮想PCのスナップショットを保存しておきましょう。

 

Visual Basic 6.0 のインストール

インストールディスクを挿入して起動すると、「互換性の問題」が表示されます。えぇ、知ってます。

image

「ヘルプ情報を使用せずにプログラムを実行する」を選んで先にすすみます。

image

懐かしのインストール画面ですね。

image

利用規約も同意します。

image

プロダクトキーはパッケージに書いてあるか、msdn の場合は、「プロダクトキー」のページにある、Visual Basic 6.0 Legacy 10-digit product key 静的ライセンス認証キー というキーを使用します。(※最近の msdnのISOダウンロードページにはキーが不要と書かれているので注意が必要です)

image

セットアップを続けます。

clip_image001[6]

インストール先は、C:\Program Files 以下ではなく、新たに C:\Program Files (Classic) というフォルダ以下を指定することにします。

これは Windows Vista より前に発売された製品は、UAC を考慮していないので、C:\Program Files 以下にインストールするとうまく動かない場合があるためで、どうしてもそれが必要というわけではないかもしれません。

clip_image001[8]

16ビットアプリケーション?Windows 3.1 かな。私が初めて使ったのが Visual Basic 2.0 で MS-Windows 3.1 でしたね。懐かしいです。

なぜこの画面が出ているか?わかりませんが、ここは「有効」ですすめます。ここで間違うとインストールが出来なくなるので注意です。

clip_image002

ここでまた互換性に問題が・・と表示されるのですが、

clip_image003

なんか同時にエラーが出てきてインストールに失敗したかに見えるのですが、先に出ていたプログラム互換性アシスタントの「ヘルプ情報を使用せずにプログラムを実行する」を選ぶと

clip_image004

普通に Visual Basic 6 のインストール画面に勧めます。「継続」するとプロダクトキーが表示されて、インストールが進みます。

clip_image005

インストール先は既に C:\Program Files (Classic) 以下が選択されているので、そのまま先に進みます。今回は「標準」をクリックします。

clip_image006

Visual SourceSafe 6.0 についてのメッセージが表示されます。今回使うのは Visual SourceSafe 2005 と Team Foundation Server 2012 なので関係ありませんね。「はい」を押して進みます。(※Professinal では VSS はインストールされないので、この画面は出ないと思います)

clip_image007

「Windowsの再起動」を押すと、Visual Basic 6.0 のインストールが完了します。

clip_image008

再起動後に、プログラムの互換性アシスタントが「正しくインストールできた?」と聞いてくるので、まだ確認してませんが、正しくインストールされたと答えておきます。

毎回、スタート画面から起動するのも面倒なので、タスクバーにピンしておきます。

Visual Basic 6.0 のアイコンを右クリックしてプロパティを表示し、互換性の「管理者としてこのプログラムを実行する」にチェックをつけて適用します。

clip_image009

起動すると、スプラッシュ画面のキャプチャを取る間もなく、一瞬で立ち上がります。

さらにもう一度、プログラムの互換性アシスタントが「正しく動作しましたか?」と聞いてくるので、「はい」と答えます。まだ確認はこれからなんですけどね。

とりあえず、Hello VB6 でも作ってみますか。

clip_image010

clip_image011

clip_image012

うん。ちゃんと実行できますね。F5実行も、exe の作成も出来る事が確認できました。

あとは過去の資産がちゃんと開発できるかどうか?ですね。それはこれからちょっとずつ確認することにしましょう。

 

Visual Studio Installer 1.1 のインストール

ディスクを挿入して setup.exe を実行します。

clip_image013

「継続」を押してインストールをすすめます。ユーザー情報を聞かれるので入力して先に進みます。利用条件に同意するか?も聞かれます。

インストール先は聞かれませんが、CDについてた「はじめにお読みください」という紙によると、「Microsoft Visual Studio Installer は Visual Studio 6.0 のアドインで」と書いてあるので、インストール先は VB6 の場所から自動的に決まるようですね。

clip_image014

こちらも再起動したらセットアップの完了です。

clip_image015

再起動したらタスクバーにピン留めします。こちらは管理者として起動するようにしなくても大丈夫なようです。

 

Visual SourceSafe 2005 のインストール

もう、以前のソースコードの取得にしか使いませんが、VSSもセットアップします。

まず先に、.net Framework 3.5 を有効にします。

clip_image016

コントロールパネルの [プログラム] > [Windows の機能の有効化または無効化] を開きます。

clip_image017

「.net Framework 3.5 (.NET 2.0 および 3.0 を含む)」をチェックして OK を押します。機能が有効になったら、Visual SourceSafe2005 のディスクを挿入します。

clip_image018

また互換性アシスタントが出ますね。そういえば、VSS2005は 64ビットの Windows 8 でも今既に使用できていますが・・・。今回も「ヘルプ情報を使用せずにプログラムを実行する」を選択します。このダイアログは、さらにもう一度表示されます。

clip_image019

msdn からダウンロードした場合は、今度はキーが埋め込まれているはずです。「次へ」進みます。

clip_image020

ここでもインストール先を C:\Program Files (Classic) 以下に変更しておきます。(※VS 2005 だともう変える必要も無かった気がしますが)

clip_image021

clip_image022

無事セットアップできました。

 

Team Explorer for Visual Studio 2012 のインストール

clip_image023

急に現代に戻りましたね。ここではもう Program Files にインストールして問題ありませんね。「インストール」を押してインストールをすすめれば OKです。

clip_image024

ちゃんと起動できますね。

以上でアプリケーションのインストールは完了です。最後に、忘れないうちに VB6の設定を変更しておきましょう。

 

Visual Basic 6.0 の設定を変更

最近の Visual Basic では既定値になっている部分は確実に変更しておいて、間違わないようにしたいところです。何かプロジェクトを開いたところから [ツール] > [オプション] で

  • 編集 > 変数の宣言を強制する(チェックする)
  • エディタの設定 > フォント : メイリオ 9
  • 環境 > プログラムの起動時 > 変更点を保存

変数宣言の強制は、近代 VB では必須です。過去のコードが動かなくなるので無ければ、必ずチェックをつけるようにしましょう。

また、プログラムの起動時に変更点を保存するようにしないと、(以前は保存されないのが当たり前で、それを駆使して、コードの変更を保存しないでちょっと試す、と言うことをやってた気がするのですが).net 開発の感覚でVB6を書いているとコードが失われて痛い目に遭うことがあります。

コードエディタのフォントの変更は任意ですが、メイリオにするのがお奨めです。

さぁ、これで準備は整いました。ここまで約2時間程。まとまった時間がとれずにコレまでちょっと放置していましたが、いよいよ ラストスパート VB6 と行きましょう!

次回は VB6 でのコードの修正と、TFSへのソース管理の追加、そしてセットアップの作成を行います。