添加Windows公共控件6.0时未注册对象库

时间:2013-03-25 12:17:01

标签: visual-studio vb6 registration ocx

我正在尝试在Windows 7 32位计算机上安装Visual Studio 6。

操作系统是来自裸机。

我按照here提到的说明(我之前使用过)

安装没有报告错误,但是当我尝试将Microsoft Windows Common Controls 6.0添加到工具箱时,我得到“对象库未注册”错误。

我尝试手动卸载并重新安装OCX,这两个都成功但我仍然有同样的错误。

我尝试安装SP6并安装没有错误(并将OCX更新为更新的版本)但我仍然遇到同样的问题。

修改

如下面进一步调查所述,似乎IE10更新打破了MSCOMCTL.ocx。但是我也认为这与订单有关,因为我有另一台带有IE10的Windows 7机器可以正常工作。

7 个答案:

答案 0 :(得分:65)

在32位计算机上:

cd C:\Windows\System32
regsvr32 mscomctl.ocx
regtlib msdatsrc.tlb

或64位计算机:

cd C:\Windows\SysWOW64
regsvr32 mscomctl.ocx
regtlib msdatsrc.tlb

这些必须是run as administrator

答案 1 :(得分:2)

我可以通过像以前一样取消注册和注册MSCOMCTRL.OCX来确认这是不可修复的。我一直试图确定哪个更新是问题的根源,看起来它是IE10或IE10与导致问题的其他更新相结合。如果我可以有更多时间投资,我会更新我的帖子,但在此期间卸载IE10可以解决问题。

答案 2 :(得分:0)

我一直有同样的问题。 VB6 Win7 64位并且遇到了一个非常简单的解决方案,因此我认为在这里分享它是一个好主意,以防它帮助其他任何人。

首先,我尝试了以下方法但没有成功:

  • 取消注册并在我想到的每个目录中重新注册MSCOMCTL,MSCOMCTL2和条形码活动X控件(VB98,系统32,sysWOW64,项目文件夹。)

  • 删除工作文件夹并重新获取所有内容。 (通过源安全)

  • 从机器上复制OCX文件没有问题并注册。

  • 安装Service Pack 6

  • 安装MZ工具 - 值得一试

  • 安装项目的可分发版本。

  • 手动编辑vbp文件(在使其可写之后)修改/删除引用并通常摆弄。

  • 取消安装VB6并重新安装(我认为这是最后的手段)问题出现在新项目而不仅仅是现有项目上。

以上内容均无效,但以下内容有效

Open VB6
New project
>Project
    >Components
        Tick the following:
            Microsoft flexigrid control 6.0 (sp6)
            Microsoft MAPI controls 6.0
            Microsoft Masked Edit Control 6.0 (sp3)
            Microsoft Tabbed Dialog Control 6.0 (sp6)
        >Apply

在此之后我仍然无法勾选Barcode Active X或Windows common contols 6.0和windows common controls 2 6.0,但是当我点击应用时,消息从未注册变为已经在项目中。

>exit the components dialog and then load project. 

这次它奏效了。 再次尝试了组件对话框,现在勾选了缺少的三个对话框。现在一切都很好。

答案 3 :(得分:0)

...在我的64位W7机器上,安装了VB6 ......在DOS下,作为Admin,这可以解决我在使用VB6应用程序时出现的OCX问题:

cd C:\Windows\SysWOW64
regsvr32 mscomctl.ocx
regtlib msdatsrc.tlb

YES!这个解决方案解决了我在VB6中使用MSCAL.OCX(Microsoft Calendar Control)的问题。

谢谢你们! : - )

答案 4 :(得分:0)

您只需在命令提示符下执行以下命令,

对于32位计算机,

cd C:\Windows\System32
regsvr32 mscomctl.ocx
regtlib msdatsrc.tlb

对于64位计算机,

cd C:\Windows\SysWOW64
regsvr32 mscomctl.ocx
regtlib msdatsrc.tlb

答案 5 :(得分:-2)

您可以在此KB http://support.microsoft.com/default.aspx?scid=kb;en-us;Q195353中运行Microsoft的工具来修复早期ActiveX控件的许可问题。这对我有用。

答案 6 :(得分:-3)

要解决Win7 32位VB6的问题,请尝试从Windows Server 2003 C:\Windows\system32\复制文件mscomctl.ocxmscomcctl.oba