• ベストアンサー

VB6.0開発ソフトインストールできません

VB6.0でデータベース(SQLSERVER7.0)をアクセスする プログラムを作りました。 そのプログラムをVB6.0が インストールしていない他のパソコンでも 動かしたいので ディストリビューション ウィザードで setup.exeを作り 他のパソコンにセットアップしようとしたら 「ファイルC:\WINNT\SYSTEM32\msado21.tlbの 登録中にエラーが発生しました」と 表示されセットアップできません。 なおセットアップのログファイルを見ると エラーC:\WINNT\SYSTEM32\msado21.tlb中に DLLRegisterSerer()のエントリポイントが 見つかりません。 次の処理中:DllSelfRegister: "C:\WINNT\SYSTEM32\msado21.tlb" とありました。 セットアップでき、実行できるようにするには どのようにしたら良いですか? もちろんexeファイルをコピーし 他のパソコンにいれても実行されません。 エラーメッセージは 実行時エラー430 クラスはオートメーションまたは予測したインターフエースをサポートして  いません

質問者が選んだベストアンサー

  • ベストアンサー
  • mfuku
  • ベストアンサー率50% (173/345)
回答No.2

下記のページを参考にして、setup.lstのmsado21.tlbの行を変更して試してみてください。 http://www.accessclub.jp/bbs/0007/beginers3132.html また、別の可能性として、NT4.0のSPによる可能性もあります。 MDACのバージョン(=ADOのバージョン)によっては、NT4.0の場合SPのいくつか以上が必要とされる場合があります。 ちなみに、MDACとは、ADOを使用出来るようにするための環境です。 バージョンは、参照設定で選択している「Microsoft ActiveX Data Objects *.* Library」で確認出来ます。 ところで、VB付属のディストリビューションウィザードではMDACのインストーラーを添付してくれます。 その点は、ご安心下さい。 ただし、MDACのバージョンが2.1より後のバージョンの場合手動でインストーラーを含めなければなりません。 最新のMDACのインストーラーでしたら、下記からダウンロード出来ます。 Ver2.5 http://www.microsoft.com/downloads/details.aspx?FamilyID=c57692e9-dde7-4a60-b586-5d4fd6794db6&DisplayLang=ja Ver2.8 http://www.microsoft.com/downloads/details.aspx?FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c&DisplayLang=ja 他のバージョンもマイクロソフトのHPから検索すれば見つかります。

hinekurimonaka
質問者

お礼

Ver2.5をダウンロードしたら 実行できました。 ありがとうございました。

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

実行させるOSがどれかも重要なのだが、このエラーはADO、まぁMDACのバージョンによるものだ。ディストリビューションウィーザード(←ちなみに私はほとんど使った事がない。理由は全く信用ならないからだ。)では恐らくMDACは含んでくれないだろう。ちなみに、「msado21.tlbファイルが壊れてるのか!?」と思うかも知れないが、恐らくこれはさらにその先、つまりmsado21.tlbが参照するファイル(DLLなど)が無いために発生しているのだと推測される。これは、ディストリウィズはVBで作ったEXEが参照しているライブラリは探すが、再帰的にそのライブラリが参照するライブラリを探す事をサボるために起こっているのだと思う(よくサボるらしい)。できればInstall Shieldなどで適切に必要なファイルを含めてあげる方が良いだろう。 という事で、実行させるパソコンに持っていく時は、マイクロソフトからダウンロードできるMDACの2.5、2.6、2.7、2.8のどれかを一緒に持っていって、先にMDACを入れてあげると良い。 おそらく実行マシンはOSが95かNT4なのではないかな。98はADO2.1が最初から入っている気がする(気がするだけ)。 後、SQL Server 7.0に接続するにも、ADOの2.5(できれば2.6以上)を使った方が今後のためにも良いと思うのだが、理由があるなら2.1でも仕方が無いだろう。Visual BasicのIDEを開いた時に、参照設定で切り替える事ができる。 長々と書いたが、解決方法はMDACをもっていってあげるかなんとかして、自前で先にADOコンポーネントを入れておいてあげよう。

hinekurimonaka
質問者

補足

実行させるOSはNT4.0です。 MDACとは何ですか? どこにあるのですか? (URLなどあったら教えてください。) 教えてください。

関連するQ&A

  • VB6.0でのディストリビューション

    ディストリビューションで色々エラーがあるようなのですが、私もどうしてもインストーラからセットアップした実行ファイルが動きません。エラーは出ないのですがAccessへの読込を行わないようです。 現在の環境ですが OS:WindowsXP pro SP1 VB 6 SP6 (参照:MS ActiveX Data Object 2.5) Access2000, MDAC2.8 C:\Program Files\Common Files\System\ado\msado25.tlb,msado28.tlbなど 関係ありそうなものを挙げてみました。 どなたか、ディストリビューション ウィザードを使っての操作を教えてください。

  • VBにてEXE作成

    VBにてとあるシステムを開発しました。 SETUP.EXEを作成して遠隔地に配布したいのです。が SETUP.EXEを起動してインストールはできるのですが 印刷実行時にエラーが出てしまいます。 VBから実行は出力できます。 ディストリビューション ウィザードの使用方法が 悪いのでしょうか。 OS :Windows2000 TOOL:VB6.0 SP5,Spread3.0,ImputMan6.5J DB :ORACLE8.05

  • VB6.0 エラーの対応仕方

    VB6.0で実行ファイルを作ったですが、そのファイルをインストール処理すると以下のエラーメッセージがでました: ”ファイル'C:\WINDOWS\SYSTEM\msado25.tlb'の登録中にエラーが発生しました。” どうすれば、そのエラーを解決できるでしょうか?ご回答をお願いいたします。

  • Windoes7にVB6をインストールし、VB6.exeを起動すると

    Windoes7にVB6をインストールし、VB6.exeを起動すると 「システムの設定が不正なため、VisualBasicを起動できませんでした。入力が間違っているか登録されていません。VBTEMPL.TLB」 との表示が現れ実行できません。 解決方法、どなたかご存知ありませんでしょうか。

  • VB2007の再インストールが出来なくて困っております

    状況的には、1台のHDDに、CとDのパーテンションを作成し、Cにはシステム関連を、Dにはアプリケーションおよびデータ関連をインストールしています。 先日誤ってDドライブをフォーマットしてしまい、VB2007が起動しなくなりました(インストールされているDドライブをフォーマットしたのであたりまえ・・・・苦笑) VBを再インストールすべくsetupを実行するのですが、削除プログラムが起動します。 Cドライブに関連ファイルが残っているためだろうと判断し、インストールされている関連ファイルを削除すべく、アンインストールプラグラムを実行するのですが、以下のメッセージで、セットアップが終了してしまいます。 ============================ 「セットアップの終了」 ウィルスバスター2007のインストールを完了する前に、セットアップが中断されました。 システムの状態は変更されていません。改めてインストールする場合は、再度セットアップを実行してください。 「終了」をクリックして、セットアップを終了してください。 ============================ 対処方法をご教授ねがいます。

  • vb2005で作成したプログラムはどこに?

    vb2005で作成したプログラムはどこに? vb2005で作ったプログラムをビルド後に、 他のPCにsetup(インストール)したとします。 その場合、実行ファイル(.exe?)はどこにあるのでしょうか  また、コマンドプロンプトで実行ファイルを起動することは可能でしょうか

  • VB6.0のディストリヴューションウィザード

    を使って、セットアップウィザードを作ると、CABファイルが出来上がり、そいつを解凍するとSetup.exeができる。で、Setup.exeでセットアップをしようとしてもセットアップされないで途中でエラーが出て終わってしまう。 WinNT W2K Win98SE のそれぞれのOSで作ったツールをVBのインストールされていないそれぞれのOSにSetupでインストールしようとしたけど失敗。 こんなことになってしまうのは僕だけなんだろうか? 誰か教えてください

  • VB6.0で作ったSetup.exeにてエラー

    VB6.0のディストリビューションウィザードで作成した Setup.exeにてソフトのインストールができなくて困っています。 セットアップの途中で「予期せぬエラーが発生しました」 「¥¥@~ファイルが見つかりません」と表示されます。 どうもファイルを参照するときに¥マークのあたりが 文字化けしているようなのですが、原因が分かりません。 なんとかセットアップができるようにしたいのですが・・・ 環境はWin98、VB6SP5です。 誰かご教授願えませんか。 よろしくお願いします。

  • VB2010で作成したdllからtlbが作れない

    VB.NETで作成したDLLをExcelのVBAから呼び出すということをやっています。 VB2007のときはよかったのですが、VB2010にしてからうまくいかなくなりました。 具体的には、コンパイルしてClassLibrary1.dllファイルを作成してから C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe ClassLibrary1.dll /tlb:ClassLibrary1.tlb /codebase を実行すると、 ClassLibrary1.dllは有効な.NETアセンブリではないため、読み込めませんでした。 となります。 ClassLibrary1の「アセンブリをCOM参照可能にする」にはチェックを入れています。 おわかりの方がいらっしゃいましたら、どうぞよろしくお願いいたします。

  • VB6.0 SHELLで起動したプログラムを終了さしたいのですが

    (1)メインプログラムから電卓を実行します。  Shell("C:\WINNT\system32\CALC.EXE", 1) (2)メインプログラムで電卓を終了させるにわ、どうすればいいのですか  教えてください。