みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

VC++6.0とVB6.0の開発方法

どうかよろしくお願いします。
早速ですが私は今大学院生であり、大学院を中退してしまった先輩の開発したアプリケーションを改造したいと考えています。しかし、そのアプリに関して説明書が無く、自分でソースコードを解読し、改造しなければなりません。

アプリは起動するとエクスプローラのような画面になり、フォルダを選択してその中のファイルの設定項目に数値を入力し、メニューバーから「実行開始」を選択すると、ある現象のシミュレーション結果を出力する、といったソフトです。
その先輩はVisual Studio 6.0を用いて、VC++6.0とVB6.0で開発しており、(多分)全てのソースコードは残っています。たまにバグが出ますが、アプリもちゃんと動きます。

私は、こういったソフト開発はVisual Studio .NET 2002を用いてVC++.netでダイアログベースのMFCアプリケーションを作ったことならあるのですが、Visual Studio 6.0は使ったことが無く、VC++6.0とVB6.0の異なる言語でひとつのアプリを作ったことは未経験です。

現在、ソースコードと格闘中ですが、.NET 2002で開発したときの拡張子slnファイルが拡張子dswに該当するということと、おそらく先輩はアルゴリズム計算部分はVCで書いて、GUIの方はVBで書いたということくらいしか分かっていません。また、アプリのソースコードが入っているフォルダには[bin][src][include][lib][vb]といったフォルダがあり、[src]の下層にはまたソースコードが大量に入ったフォルダがあり、[bin]にはバイナリファイル、実行exeファイルが大量に入っています。[vb]にはVBで記述されたソースらしきものが入っています。

以上が背景なのですが、ソフトに詳しい方に幾つか質問させてください。
(1)このソフトを改造したいとすれば、具体的にどういう手順で改造すればよいですか?
(2)VCの方はdswファイルについてビルドすればコンパイルされ、[bin]にexeが出来る?のですが、VBの方はコンパイル出来ません。なぜでしょうか?
(3)このような異なる大量なexeファイルを、ひとつのアプリケーションとして構築するのはどうすれば良いのですか?これらのexeファイルは一つ一つがモジュール?であり、それらを結合する…といった理解でいいのでしょうか?
(4)このVisual Studio 6.0で作られたソースを、現在フリーでダウンロードできるVisual Studio 2008 Express Editionに移行して改造することは、容易にできるでしょうか?

他にもたくさん疑問はあるのですが、とりあえず以上4つの疑問にお答え頂ける方がおりましたらご教授下さい。

投稿日時 - 2009-12-01 23:41:21

QNo.5491278

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

>VBの方はコンパイル出来ません。なぜでしょうか?
VB用のプロジェクトの識別子はvbpになります。
プロジェクト毎にexeやdllが作成されます。
#複数のプロジェクトを開発環境で使用する
#場合にはvbgを使用

(3)
メニュープログラムからshellコマンド等を使って
個別のexeを実行している物と思われます。
最初に実行するプログラムが判ればそこから
処理の流れを追いかけていけると思います。

投稿日時 - 2009-12-02 08:05:16

お礼

回答ありがとうございます。
どうもソースを見た感じだと、VBでDLLを生成してVCでexeを生成しているようです。。何故VCがexeでVBがDLLなのかは分かりませんが、多分見た感じだとメインとなるのはVCのソースだと思います。

vbg拡張子は見たところソースフォルダにはありませんでしたが…、メインプログラム(メニュープログラム?)を解読してみることにします。

投稿日時 - 2009-12-02 21:28:39

ANo.2

> (1)これらのソースを全て読んで理解したところで、ソフト開発の手法、exeの結びつけ方が分からないとどうにもならないと思うので質問させて頂きました。ご教授頂けると助かります。

おそらくはVBで書かれたメインとなるexeから他のUIを持たないexeを起動しているのでしょう。"exeの結びつけ方"はそこにあります。

> (2)説明が足りませんでした。vbの方はdllファイルが幾つもあります。
そもそもvcとvbを混在させる方法というのはどういう手法があるのでしょうか。何故vcとvbを使い分ける必要があったのかも気になります。vbの方が画面の仕様を記述し易かったからでしょうか

VBの方が画面デザインなどのUI絡みがVC++よりは圧倒的に楽ですから。
それらDLLのソースも揃っていますか? 移植となれば全ソースが揃っていないことにはかなりの困難が予想されます。

> (3)異なるexeが50個近く生成されます。...この大量のexeをどう結合しているのか検討がつきません。

それこそソースを読まないと。

-- ともかくも、全ソースがそろっていて、再構築可能か(欠けてるものがないか)を検証するところからではないかしら。

投稿日時 - 2009-12-02 06:05:44

お礼

回答ありがとうございます。
ソースはDLLのソース含め全て揃っているはずです。
どうもソースを見た感じだと、VBでDLLを生成してVCでexeを生成しているようです。。何故VCがexeでVBがDLLなのかは分かりませんが、多分見た感じだとメインとなるのはVCのソースだと思います。

投稿日時 - 2009-12-02 21:25:35

ANo.1

> (1)このソフトを改造したいとすれば、具体的にどういう手順で改造すればよいですか?

まずは読んで理解する。改造するからには中身が理解できんとどーにもこーにも。

> (2)VCの方はdswファイルについてビルドすればコンパイルされ、[bin]にexeが出来る?のですが、VBの方はコンパイル出来ません。なぜでしょうか?

Visual Studio 6.0 では VBコードをコンパイルできません。

> (3)このような異なる大量なexeファイルを、ひとつのアプリケーションとして構築するのはどうすれば良いのですか?これらのexeファイルは一つ一つがモジュール?であり、それらを結合する…といった理解でいいのでしょうか?

exeが何本も生成されるんですか?

> (4)このVisual Studio 6.0で作られたソースを、現在フリーでダウンロードできるVisual Studio 2008 Express Editionに移行して改造することは、容易にできるでしょうか?

容易か否かはあなた次第。なので答えようがありません。

投稿日時 - 2009-12-02 00:03:24

補足

早速の回答ありがとうございます。
(3)異なるexeが50個近く生成されます。それらをクリックすると、あるものはシミュレーションのデータ設定画面が出てきたり、ダイアログボックスが出てきてメッセージがでてきたり…、いづれの画面もアプリを使っていると出てくる画面なので、これらのexeはアプリの部品であり、これらを結合?することでひとつのアプリを形成していると認識しています。このアプリは内容は言えないですが、かなり大きなアプリであり、そこらのフリーソフトよりも遥かに大掛かりなものです。先生曰く、まるでソフトハウスで有料で作ってもらったアプリのようだ、とのことです。この大量のexeをどう結合しているのか検討がつきません。
(2)説明が足りませんでした。vbの方はdllファイルが幾つもあります。
そもそもvcとvbを混在させる方法というのはどういう手法があるのでしょうか。何故vcとvbを使い分ける必要があったのかも気になります。vbの方が画面の仕様を記述し易かったからでしょうか。
(4)とりあえずVisual Studio 6.0の環境があるのでこちらで改造をしようと考えていますが、Visual Studio 2008 Express Editionに移る必要性があるならば教えていただけると幸いです。

投稿日時 - 2009-12-02 00:12:21

お礼

早速の回答ありがとうございます。
(1)これらのソースを全て読んで理解したところで、ソフト開発の手法、exeの結びつけ方が分からないとどうにもならないと思うので質問させて頂きました。ご教授頂けると助かります。

投稿日時 - 2009-12-02 00:43:42

あなたにオススメの質問