プロが教える店舗&オフィスのセキュリティ対策術

ACCESS2003 mscomct2.ocxを新しいパソコンに導入するには?

windows7 home premium 32bit
Access2003

パソコンを買い換えたため、以前使用していたACCESS2003で作ったmdbファイルを移動しました。
開こうとしましたがエラーが出て開かず(エラーの内容は忘れましたが、何かが足りないといった事だったと思います)、日付の入力にDTPickerを使用していたことに気付いてmscomct2.ocxをwindows\system32フォルダに入れました。
無事、起動は出来たのですが、フォームを開こうとすると「このコントロールにはオブジェクトがありません」というメッセージが現れて、配置したDTPickerが消えています。

フォームの ツール-ActiveXコントロール の利用可能なコントロールの中には入っておらず(当然^^;)、登録から mscomct2.ocx を選択すると「追加することはできませんでした。別のセットアッププログラムを使って追加してください。」と出ます。
そこで、Visual Basic の ツール-参照設定 を見てみますと 参照可能なライブラリファイルの中に Microsoft Windows Common Control-2 6.0(SP4) にチェックが入っています。
試しにと、一度チェックをはずしてACCESSを再起動してみると Microsoft Windows Common Control-2 6.0(SP4) が消えていてチェックを入れることも出来なくなりました。(でも、起動はします。)

mscomct2.ocxを使えるようにするにはどのようにしたら良いのでしょうか?
以前、パソコンがクラッシュして再インストールしたときは mscomct2.ocx をsystem32に放り込んだだけで問題なかったような気がしたのですが・・・。7は少し違うのでしょうか?
もし同様の経験のある方がいらっしゃいましたら是非ともご教示下さい。

A 回答 (1件)

通常、Office 2003をインストールするときに、VB6 RuntimeのCommon Controlもインストールされるはずですが、それが出来ていない場合は、


Visual Basic 6.0 Service Pack 6:ランタイム再頒布可能パッケージ

をMicrosoft サポート(Vector でも可)で探して、ダウンロードして再インストールします。
すでにあるものに、手動で行うなら、コマンドプロンプトから、regsvr32.exe で、ActiveX を、サーバー登録すればよいのですが、管理者権限でないと、セキュリティに弾かれるかもしれません。

http://support.microsoft.com/kb/957924/ja
Visual Basic 6.0 Service Pack 6 ランタイム拡張ファイル用の累積的な更新プログラムのロールアップについて

ここを読んでみると、Vista以降は、アップデートしなくてはいけないようです。

同サイトの内容の一部
$この累積的な更新プログラムのロールアップは本当に必要ですか。
$はい。この累積的な更新プログラムのロールアップには、既に説明したセキュリティ
$修正プログラムと、Visual Basic 6.0 ランタイム拡張ファイルに収められている
$ActiveX コントロールに関する他の複数の安定性...
    • good
    • 0
この回答へのお礼

お返事ありがとうございました。

早速、お返事にありましたmicrosoftのサポートページで更新プログラムをダウンロードして試してみましたところ、「Visual Basic 6.0がすでにインストールされている必要があります」とのエラーメッセージが出て、インストール出来ませんでした。

そこで、vectorにあった「Visual Basic 6.0 SP6 ランタイムファイル」をインストールしてみたところ、上手く動くようになりました!^^
私が肝心と思ってましたmscomct2.ocxは同じ日付でしたが、今回はDTPickerが表示されるということは単純にmscomct2.ocx単体だけでは駄目ということなのでしょう。

本当に助かりました。ありがとうございました。m(__)m

お礼日時:2010/12/05 18:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています