4

このエラーは、vb6 dll をコンパイルしているマシンが突然動作を停止し、以前は正常に動作していた場合に発生します。

私はこれをネットでたくさん見てきましたが、私が見つけることができ、私に関連する解決策がたくさんありました。http://www.xtremebbtalk.com/archive/index.php/t-140158.html から 有望と思われるこれらのものと、http://www.excelfox.com/forum/f2/missing-mscomctllib-15 からのものを含め ます/

これらはどちらも、MSCOMCTL.OCX の再登録を提案しています。

しかし、これらの両方に従った後でも、まだ問題がありました。何時間も検索してさまざまなことを試した後、会社のポリシーのためにインストールされ、マシンの再起動を待っている更新がいくつかあることに気付きました。

答え

マシンを再起動し、アップデートのインストールが完了するのを待ちました。その後、dll は問題なくコンパイルされました。

4

4 に答える 4

13

いくつかの Windows 更新プログラム (IE10 へのアップグレードを含む) と VS2012 Update 3 をインストールした後も同じ問題が発生していましたが、更新プログラムは完全にインストールされ、MSCOMCTL.OCX は既に COM 登録されていました。この問題について見つけた別の StackOverflow の投稿で、これで最終的に解決されました。

コマンド プロンプトを管理者として実行する

64 ビット システムでは C:\Windows\SysWOW64、32 ビット システムでは C:\Windows\system32 に移動します。

「regtlib msdatsrc.tlb」を実行します (引用符なし)

クレジットは「自動」に移動: KB 2687323 の更新後、VB6 IDE は MSCOMCTL.OCX を読み込めません

このエラーを検索したときの最初の結果なので、ここに投稿します。

于 2013-09-23T20:32:19.860 に答える
2

この回答は、コンピューターがある時点で dll/ocx をコンパイルしていたが、それ以上コンパイルしていない場合に機能するはずですが、コンピューターがコンパイルしたことがない場合にも機能する場合があります。

したがって、質問に対する簡単な答えは、再起動を待っている保留中の更新がマシンにあるかどうかを確認することです。

その場合は、必ずマシンを再起動してください。

再起動後も問題が発生する場合は、Windows サブディレクトリにあるはずの MSCOMCTL.OCX を再登録してみてください。c:\windows\system32またはc:\windows\SysWOW64のいずれか。regsvr32 を使用して ocx を登録することに注意してください

于 2012-09-27T05:46:41.600 に答える