Results 1 to 15 of 15

Thread: MSCOMCTL.OCX registration problem

  1. #1

    Thread Starter
    New Member
    Join Date
    May 2005
    Posts
    5

    MSCOMCTL.OCX registration problem

    I know this is an old issue but I cannot fix it. I have spent days and days on this. I am using VB6 with SP6 (yes, I know I should upgrade to .NET) on Windows 7 running the OS at 64 bit. With the Microsoft patch from August, my VB6 will not allow me to add mscomctl.ocx as a component It tells me that it is not registered. Yes, I have Browsed to the SysWOW64 subdirectory and also to the System32, but neither work. i have tried every single thing on the Internet, from deleting the 2.0 registry entry, to all of the unregistering and registering, etc. I can confirm that the registry entry is 2.1 for HKEY_CLASSES_ROOT\TypeLib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}. The date of the mscomctl.ocx is 6/6/12

    To test that mscomctl.ocx is registered, I set up and edited a macro under Microsoft Word 2010 and the Word Visual basic Editor allowed me to add SysWOW64\mscomctl.ocx components (Slider Control, ImageList, TreeView) without any problem. It also works with Excel 2010.

    I have uninstalled and reinstalled VB6/SP6 to not avail.

    I have checked Upgrade ActiveX Controls in my VB project Properties.

    I am at wit's end. Apparently, the Word and Excel Visual Basic Editors are recognizing the mscomctl.ocx as registered but VB6/SP6 will not.

    Can anybody help me? Thanks so much.

  2. #2
    gibra
    Guest

    Re: MSCOMCTL.OCX registration problem

    If the problem started after you installed the latest version of SP6, then the problem may be in how you installed SP6.
    How did you installed SP6?

    If the problem existed before then, probably, depends on the installation of VB6 in Windows 7.
    How did you installed VB6?
    Using my tool VSInstaller (see my signature) I have installed with success VB6 + SP6 + MSDN on Windows 8 64-bit (normally I use Windows 7 64bit).


  3. #3
    PowerPoster Keithuk's Avatar
    Join Date
    Jan 2004
    Location
    Staffordshire, England
    Posts
    2,236

    Re: MSCOMCTL.OCX registration problem

    I've never seen any way to uninstalled VB6/SP6 as it doesn't show in Add/Remove. You can download Service Pack 6 for Visual Basic 6.0 which is Vs6sp6B.exe. When you run it, it asks for a folder to extract to then you run setupsp6.exe to install.
    Keith

    I've been programming with VB for 25 years. Started with VB4 16bit Pro, VB5 Pro, VB6 Pro/Enterprise and now VB3 Pro. But I'm no expert, I'm still learning.

  4. #4
    PowerPoster
    Join Date
    Feb 2012
    Location
    West Virginia
    Posts
    14,206

    Re: MSCOMCTL.OCX registration problem

    The date of the mscomctl.ocx is 6/6/12
    That would seem to be a big red flag right there. The MSComctl.OCX SP6 should be dated 2004 and the version should be 6.1..97.82 This from a system where I just installed VB6 and SP6 last week.

    a date of 2012 would hint that the file has been modified somehow, possibly a virus.

    Perhaps Excel and Word are using a different version possibly Comctl32.ocx
    Last edited by DataMiser; Jan 1st, 2013 at 03:19 PM.

  5. #5
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: MSCOMCTL.OCX registration problem

    I'd guess the 6/6/2012 dated OCX comes from one of those ill-fated, broken "security rollup" patch packs. This probably won't be the cause of the registration problem (unless they screwed that part up again too, often you end up with double-registration of controls from these crappy patches).

    The last known good version I'm aware of is 6.1.98.34 dated 5/2/2012, serviced by Windows Update as an OS component in contemporary machines (i.e. after Win XP).

    The 6.1.97.82 version is the latest version provided for redistribution, and is non-tailored code (i.e. meant to work on anything from Win95 through WinXP but nothing later, where installers can't overwrite the system copy anyway due to Windows File Protection).

    When packaging include the 6.1.97.82 version, but be sure that you use an installer that does not blindly try to overwrite an existing system copy. If a newer one is present your installer should skip trying to install this redist version. It has a few security bugs anyway as well as not working correctly on modern versions of Windows. Avoid "no-no setup" which requires you to be hypervigilant about scripting the correct process. Almost any other installation technology is safer.


    No, he has a registry corruption problem due to something else. Time to reinstall Windows.

  6. #6
    New Member
    Join Date
    Sep 2002
    Posts
    3

    Re: MSCOMCTL.OCX registration problem

    I'm having the same problem.

    If I delete or rename C:\Windows\SYSWOW64\MSCOMCTL.OCX, previously compiled programs will not run. When I return them, the programs run. Regsvr32.exe C:\Windows\SYSWOW64\MSCOMCTL.OCX gives a "Success" message. It seems the ocx is registered.

    But when I try to add the common controls in the IDE I get a message that says "unregistered".
    Tried the steps in the following links, no help.
    http://technet.microsoft.com/en-us/s...letin/ms12-060
    http://www.fmsinc.com/MicrosoftAcces...rols/mscomctl/

    Also, did the reinstall route.

    Anyone have an idea?

  7. #7
    New Member
    Join Date
    Apr 2017
    Posts
    4

    Re: MSCOMCTL.OCX registration problem

    I know this is an old thread, but I just installed Win 7.0 32 pro on a new machine and none of my previous VB6 projects will open anymore (previously Win XP). I receive the same error message re:mscomctl.ocx not able to load. My current version of this ocx is 6.1.95.45.

    I have searched the net for days and have tried about every solution presented to no avail.

    I have been unable to find a version 6.1.98.34 of mscomctl.ocx. Does anyone have a copy (or a link) they can share?

  8. #8
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: MSCOMCTL.OCX registration problem

    Have you looked at MS12-060: Description of the security update for Visual Basic 6.0 Service Pack 6: August 14, 2012 yet? It was the first hit I got when searching.

    Read it carefully, there are uninstall instructions there if needed:

    Removal information
    Note We do not recommend that you remove any security update.

    You cannot remove this security update through the Add or Remove Programs item or the Programs and Features item in Control Panel. To remove this security update, save the MSI file to a known location, then at a command prompt, run the following command:

    msiexec /x [knownlocation]\[PatchName].msi

  9. #9
    New Member
    Join Date
    Apr 2017
    Posts
    4

    Re: MSCOMCTL.OCX registration problem

    Thanks for the link. I followed through a number of threads and eventually downloaded the security update. It would not install on my PC; it indicated that I do not have SP6 installed.

    I was also able to find a stand-alone copy of mscomctl.ocx with a build code of 6.1.98.34. I unregistered the original (6.1.95.45), renamed it mscomctl.bak and copied & registered the new ocx file. No change. I tried both the 2.0 and 2.1 versions in the VBP file.

    I'm not even sure if this is the correct fix for the problem. I have tried everything else, from disabling IE11, changing the system date on the computer to 30-Mar-13, clearing (and restoring) the killbit flag in the registry, all of which seems to have solved this problem for other users, but not on my machine. I also updated the OCX using the instructions supplied on another thread that installed and registered 6.1.97.82 (ca. 2011) with no change.

    Maybe I should start at the beginning: Is there a known fix for a copy of VB6 that ran correctly under Win XP, not able to recognize or register mscomctl.ocx in projects created on the XP machine, when running under WIN 7 Pro 32 bit OS? My VB6 install disks came with SP3, which I have not installed.

  10. #10
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: MSCOMCTL.OCX registration problem

    SP6 is a required update. Nothing less is supported at all, and most patch packages issued since then will insist upon it.


    If the root of your problems is that break in binary compatibility that was made for MS Office and IE (the interface version 2.1 problem) I'm not sure there is any obvious resolution.

    That transition was graceful under Vista and Win7 Gold, but not Win7 SP1.

    The fix for that was "stop using Windows 7, go directly to Windows 8 or newer" where the 2.1 issue goes away. For whatever reason this problem introduced in Windows 7 SP1 with certain MS Office and IE security patches was not ever fixed for Windows 7.

    And even if you "fix" this, such projects won't work on later versions of Windows.

    Moving to Windows 10 may sound draconian, but I did that a while back and things are working fine. Sure, opening an old project sometimes brings up the 2.1 problem but I can just edit the VBP file to change back to 2.0 and everything is fine again.

    Windows 7 is even deader than Vista from a VB6 programmer's point of view.

  11. #11
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: MSCOMCTL.OCX registration problem

    Maybe somebody who has fixed this on Windows 7 recently will offer a suggestion.

  12. #12
    New Member
    Join Date
    Apr 2017
    Posts
    4

    Re: MSCOMCTL.OCX registration problem

    Thanks for the quick responses. It actually helps, even though it's not what I wanted to hear, at least I'm getting a better grasp of the problem.

    I installed SP3 from my installation disks, and as you might expect, no change. Is it possible to apply SP6 at this point? Do I need to go in sequence (SP4/SP5/SP6) or can I update it in one step?

    I don't think moving to Win 10 is an option at this point. I have some rather old, but necessary software that won't run in a Windows 64 bit OS (that's why I opted for Win7-32bit).

    Also, why would this fix not work: http://www.fmsinc.com/MicrosoftAcces...rols/mscomctl/

    If SP6 installs v2.1 (6.1.98.34) of mscomctl.ocx, why did my attempt to do this manually not succeed (see my 2nd post)? Is there a proper way to copy the file into the \Sytem32\ directory and register it within Windows?
    Last edited by Phoenix Engineering; Apr 2nd, 2017 at 05:03 PM.

  13. #13
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: MSCOMCTL.OCX registration problem

    Each Service Pack has all of the previous ones included. So you can always install a later one even when previous ones have been installed.

    Windows 10 is available in 32-bit as well as 64-bit.

  14. #14
    New Member
    Join Date
    Apr 2017
    Posts
    4

    Re: MSCOMCTL.OCX registration problem

    You've been most helpful. I really appreciate the prompt responses. I'll try SP6 first.

  15. #15
    PowerPoster Elroy's Avatar
    Join Date
    Jun 2014
    Location
    Near Nashville TN
    Posts
    10,913

    Re: MSCOMCTL.OCX registration problem

    Hi tomtraxler,

    Try one of the following (from CMD window):

    x64
    ---
    cd C:\Windows\SysWOW64\
    regtlib msdatsrc.tlb

    x86
    ---
    cd C:\Windows\System32\
    regtlib msdatsrc.tlb


    I know it seems unrelated, but it sometimes works for me. I didn't read all of the above extremely carefully, but I assume you're trying to get the VB6 IDE installed. This is a common problem.

    There are also a couple of patches from Microsoft that may help, specifically VB60SP6-KB2708437-x86-ENU.msi. I'll leave you to your own devices to find it, but I think you can still download it from Microsoft.

    I'll agree that this is an incredibly annoying issue. It seriously has me considering adopting Krool's rewrite of all the controls in the mscomctl.ocx.

    Best Of Luck,
    Elroy
    Any software I post in these forums written by me is provided "AS IS" without warranty of any kind, expressed or implied, and permission is hereby granted, free of charge and without restriction, to any person obtaining a copy. To all, peace and happiness.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width