VB6.0で作成したプログラム(ファイルメニューの「exeの作成」で作成した簡易な物)を配布していますが、PCによって起動できないことがあります(約200台のPCがありますが、OSはすべて「WIN95」ですが、導入時期等がことなり、ハードやスペックも異なるものが多数あります。比較的新しく導入したPCは大丈夫ですが、やや古いものでは「アプリケーション開始エラー」や警告マークだけのメッセージボックスが表示されるだけで、起動できません。)
ディストリビューションウィザードで正しく配布して、きちんとインストールすればいいんでしょうが、各PCに負担をかけたくない事情があります。
素人考えでは、参照設定の問題等かとも思っていますが、一般的な回答でも結構ですので、何かアドバイスをいただけないでしょうか?よろしくお願いします。
>ディストリビューションウィザードで正しく配布して、
ということはSetupを作らずにExeを直接配布しているのでしょうか?
各種DLLのバージョンが異なるでしょうから、動作しなくても不思議ではありません。
Setupを作るべきですが、Setupで配布すると、既存のDLLのバージョンがあがって、
今まで動いていたWin95アプリの一部が動かなくなるかもしれません。
(特にAccess95あたり使っていたらやばいかも…)
もし既存のアプリは古いDLLでないと動かない、VB6アプリは新しいアプリでないと動かない、
なんてことになったらどちらかあきらめるしかないでしょう。
Setupを使わない場合、手作業で必要DLLをコピーし、レジストリ登録することになります。
手作業でやったからといって、上記の「新旧DLL問題」がどうなるわけでもないですが…。
補足として一般的な情報を記載します。
実行する場合は「既存アプリが動かなくなるかもしれない」ことに留意してください。
一口に「Windows95」といっても複数のバージョンが存在します。
参考ページ 「Windows 95【ウィンドウズ・きゅうじゅう・ご】」
http://www2.synapse.ne.jp/khiro/yougo/w/windows95.htm
パッケージ版(いわゆる無印Win95)には、
OSの心臓部であるKernel32.dllに重大なバグがあるようですから、
少なくともSP1をあてたほうがいいでしょう。
また、参考ページ 「開発ツール対応 OS 一覧」
http://www.microsoft.com/japan/msdn/vs_previous/vstudio/techinfo/toolos.htm
によると、開発環境ではInternet Explorer 4.01 SP1 が必須 となっていますが、
動作環境もこれに準じるとみたほうがいいでしょう。
(VBの使用するDLL,OCXの一部はIEによって提供されています。)
Internet Explorer 3.02 がインストールされている場合、
Internet Explorer 4.01 SP1以上に変更したほうがいいでしょう。
ちなみに、Windows95は、すでに「サポート終了」されています。
使用を続ける場合、自力解決が原則になりますので、
事情が許すなら早急にOSをリプレースしたほうがいいかもしれません。
(たいていは事情が許してくれないんですが…。)
了解いたしました。もっとしっかり勉強いたします。どうもありがとうございました。
ツイート | ![]() |