你安装的VB6是不是企业版???建议安装企业版:http://download.csdn.net/detail/veron_04/4074955

解决方案 »

  1.   

    我遇到了同样的问题,网络上的方法基本不管用,后来发现是控件的版本不对,安装上VB60SP6-KB2708437-x86-CHS.msi补丁就好了,微软的数字签名显示是2012年的补丁。
      

  2.   

    Win7系统中,32位组件的目录是: Windows\SysWOW64楼主把控件放入这个文件夹中,重新注册,试一下行不。
      

  3.   


    这个我安装了 装不了 说什么我没安装vb6 sp6
    可我安装过了啊 是精简版的VB6 SP6
      

  4.   


    这个我注意了 我是64位的系统
     Windows\SysWOW64 和 Windows\System32
    都注册过,引用部件时也注意的文件夹的不同
    但是都不行
      

  5.   

    没用的,楼主。要么你把VB6设置为“用管理员启动”,要么你用XP模式。我现在写VB都是在虚拟机里
      

  6.   

    楼主 请问你现在弄好了吗?我这也是和你一样,
    ##网上下载了多个MSCOMCTL.OCX重新注册成功,但加载还是失败
      有些注册后引用部件干脆提示未注册
    ##重装vb6sp6
    ##用记事本打开VBP文件, 找到这一行:
    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX
    改为:
    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
    ##卸载了系统自带的OFFICE2003
    ##VB60SP6-KB2708437-x86-CHS.msi 安装不了
    ##管理员身份解决不了
    ##引用的文件夹也注意了
    但是都没用,不知道楼主现在是否解决了这个问题?
      

  7.   

    最多只需三步,彻底解决VB6中不能加载MSCOMCTL.OCX的提示
    http://rewwensoftware.blog.163.com/blog/static/1841283032013928956442/
      

  8.   

    那么已经在其他系统下编译好的安装包,在 Win7 下安装,这个控件能够安装使用吗?
      

  9.   

    不知道今天还有没有人想要知道这个问题的答案但是我确实找到了答案,希望可以帮到有需要的人:
    管理员权限运行命令提示符然后:
    32-bit系统
    cd C:\Windows\System32
    再运行:
    regtlib msdatsrc.tlb在64-bit 系统:
    cd C:\Windows\SysWOW64
    regtlib msdatsrc.tlb
      

  10.   

    最终下载安装 VB60SP6-KB2708437-x86-CHS.msi 后解决,泪奔,困扰很久试了N多办法 
      

  11.   

    非常感谢  guobin1014   这个办法,在网上查了很久都是一些不管用的办法,只有guobin1014大这个好用。谢谢。
    ------------------------------------------------------------------------------------------------------------------------------------------
    不知道今天还有没有人想要知道这个问题的答案但是我确实找到了答案,希望可以帮到有需要的人:
    管理员权限运行命令提示符然后:
    32-bit系统
    cd C:\Windows\System32
    再运行:
    regtlib msdatsrc.tlb在64-bit 系统:
    cd C:\Windows\SysWOW64
    regtlib msdatsrc.tlb最终下载安装 VB60SP6-KB2708437-x86-CHS.msi 后解决,泪奔,困扰很久试了N多办法 
      

  12.   

    http://manpuku.blog.163.com/blog/static/770626201422532841221/
    装个sp6补丁就行
      

  13.   

    我的 Win 7/SP1 64位旗舰版
    安装的 VB6简体中文企业版
    完全正常!网上很多人在说的 各种希奇古怪的“问题”、错误,
    本人表示:从来木有遇到!
      

  14.   

    装了 Vs6sp6.exe
    装了 VB60SP6-KB2708437-x86-CHS 这个,还是没解决。
    -----------------------------------------------------在64-bit 系统:
    cd C:\Windows\SysWOW64
     regtlib msdatsrc.tlb
    提示没有这个命令 regtlib
    ------------------------------------------------
    管理员权限下 命令窗口分别两个文件夹下 system32  syswow64 regsvr32 mscomctl.ocx  , 依然无效。
    管理员权限下 打开VB6.0 ,部件添加也不行。
    ============================
    真的快疯了。
      

  15.   

    固态硬盘的问题?换回机械硬盘,就可以加载MSCOMCTL.OCX.完全一样的Win7安装盘,一样的vb6中文企业版。神了
      

  16.   

    看看我的办法,试试:http://blog.csdn.net/hpygzhx520/article/details/13042219
      

  17.   


    不行,直接重装系统, 先装VB6,再装office.
    就好了,啥也不要管
      

  18.   

    我也遇到这个问题,是用这种方法解决的
    1.用管理员的身份登录---控制面板---用户账户---更改用户账户控制设置---滑动条拉到最下面----确定---重启
    2.在网上下载一个  MSHFLXGD.ocx或拷贝自己电脑中的MSHFLXGD.ocx,放置到win7的一个文件夹中,比如 AA
    3.在AA文件夹中建立两个txt文件,
       3.1  一个命名为32位: 
         内容为:
      @echo 开始注册
    copy MSHFLXGD.OCX %windir%\system32\
    regsvr32 %windir%\system32\MSHFLXGD.OCX /s
    @echo MSHFLXGD.OCX注册成功
    @pause
        3.2 一个命名为64位: 
         内容为:
    @echo 开始注册
    copy MSHFLXGD.OCX %windir%\SysWOW64\
    regsvr32 %windir%\SysWOW64\MSHFLXGD.OCX /s
    @echo MSHFLXGD.OCX注册成功
    @pause
       3.3然后将这两个txt文件的后缀名改为  bat
    4.然后根据你自己系统的情况,
         如果系统是32位的则,点击32位的那个文件
          如果系统是64位的则,点击64位的那个文件  
    5.系统会提示注册成功 6.如果需要,注册好需要的组件后,将第一步的设置再改回来即可
      

  19.   

    25楼请注意,64位时,要执行c:\windows\syswow64\regsvr32.exe  注册ocx
      

  20.   

    在64位Windows下:
    64位exe和dll在目录c:\windows\system32目录下;
    32位exe和dll在目录c:\windows\syswow64目录下;
    所以要注意:
        在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。
        且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
      

  21.   

    我也曾经遇到过,跟VB6版本没关系,应该是OCX的问题!
      

  22.   

    怎么知道一个exe或者dll文档是32位,还是64位?
      

  23.   

    使用PE Browse Professional软件查看exe或dll
      

  24.   

    这个问题也遇到过,安装SP6各种方法都不行,当时把系统补丁全部打到最新就okL 
      

  25.   

    刚刚解决了这个问题,特地发上来:
    我的问题与楼主几乎是一样的。
    系统:Win7
    Office:2010.
    VB 6 已经安装补丁以及试过各种方法,均未能凑效。我的思路:有人说是安装了OFFICE后,OFFICE导致。那么问题来了,OFFICE自身的VBA是否能正常使用这个OCX呢?所以可以从这里入手。如果VBA都不能 ,那么再说。
    Step1:验证VBA是否能正常加载MSCOMCTL.ocx。随意打开一个Excel文档,进入VBA开发模式。新建一个窗体,显示出“工具箱”。上面显示的是最原始的那些控件,如按钮,文本框之类的。好,现在是关键部分。在“工具”-“附加控件”中,试图添加TreeView(由MSCOMCTL.ocx支持的),看是否能添加成功。
    上图是我这边已经添加成功的情况。
    如果添加成功,则试图在UserForm1中拉出这个TreeView。好了,现在是否能够画出这个控件?如果不能画出,则继续看Step2。否则,本回答不适合你的情况,请不用看了。
    Step2:到了这里,既然VBA自己都有问题,那么,是否有工具去修复这个问题呢。谁挖的坑谁来填。现在请出Office中的这个工具:
    运行。大概需要几分钟。最后,会报告修复了什么内容。我这边是修复了一项内容。这个是关键,即极有可能已经修复了Step1中出现的问题。
    Step3:回到VBA,重复Step1中的尝试。看是否能画出TreeView。如果能画出,则说明问题已经解决大半。否则,不用往下看了。
    Step4:回到VB6。新建一个工程,新添加MSCOMCTl控件,看是否能顺利添加。如果可以,基本楼主的问题可以解决,否则,那就是别的复杂原因了。个人真实操作,希望为此困扰的小伙伴提供借鉴。