此错误来自编译vb6 dll的机器,该机器突然停止工作并且过去工作正常。
我在网上看到了很多我能找到并且与我相关的解决方案。 包括这些似乎很有希望的 http://www.xtremevbtalk.com/archive/index.php/t-140158.html 和一个 http://www.excelfox.com/forum/f2/missing-mscomctllib-15/
这两个建议重新注册MSCOMCTL.OCX
但是在完成这两个之后我仍然遇到了问题。 经过几个小时的搜索和尝试不同的事情后,我意识到已经安装了一些更新,并且由于公司政策而等待重启机器。
我重启机器并等待更新完成安装。 之后,dll编译没有问题。
答案 0 :(得分:12)
在安装了一些Windows更新(包括升级到IE10)和VS2012 Update 3后,我遇到了同样的问题,但更新已完全安装,并且MSCOMCTL.OCX已经注册了COM。在我发现的关于这个问题的另一篇StackOverflow帖子中,这最终为我解决了这个问题:
以Admin
运行命令提示符在64位系统上导航到C:\ Windows \ SysWOW64,在32位系统上导航到C:\ Windows \ system32
执行'regtlib msdatsrc.tlb'(不带引号)
信用转为'自动': VB6 IDE cannot load MSCOMCTL.OCX after update KB 2687323
我在这里发帖,因为你是第一个搜索此错误的结果。
答案 1 :(得分:1)
如果计算机在某个时刻编译dll / ocx但这个答案不再存在,那么这个答案应该有效,但是如果你的计算机从来没有编译它也可以工作。
因此,问题的简单答案是检查您的计算机是否有等待重启的挂起更新。
如果是这样,请确保重新启动计算机。
如果重启后问题仍然存在,请尝试重新注册应存在于windows子目录中的MSCOMCTL.OCX; c:\ windows \ system32 或 c:\ windows \ SysWOW64 。 请注意,您使用regsvr32注册ocx 。
答案 2 :(得分:1)
我有Windows Server 2008 R2(64位),我遇到了同样的问题,我按照以下方式得到了:
答案 3 :(得分:0)
我有一台生产计算机出现此问题。它是一台新格式化的PC,以Windows XP作为操作系统。在撰写本文时,我们知道Windows XP不再提供更新。我做的是,我安装了VB6,因为我可以访问这个软件,之后,我安装了VB6 Service Pack 6,错误得到纠正。我必须安装VB6 Enterprise,因为安装Service Pack需要安装所述IDE中包含的数据。