not able to open VB project, getting error “C:\windows\system32\mscomctl.ocx” could not be loaded

后端 未结 8 1017
醉梦人生
醉梦人生 2021-01-23 09:18

I have a VB project was able to work without any issues, but now when i open the project i am getting the error with mscomctl.ocx. I have re-registered the ocx but still am not

相关标签:
8条回答
  • it seems to me your project has lost its reference to the ocx (while it still tries to use some of the controls)

    click on 'components' in the 'project' menu in the ide

    in the list make sure 'microsoft windows common controls 6.0 (sp6)' is checked ... if it already is, try removing it, close (and save) the project, open the project, and turn it on again

    0 讨论(0)
  • 2021-01-23 09:36

    I was having this issue when I open the project on Windows 7 64-bit environment, it works correctly on win XP machine. I did a very simple change in project file earlier it says

    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX
    

    I changed 2.1 to 2.0 because I have seen it like that in many forums and it worked like charm. The updated reference in VBP file is

    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
    
    0 讨论(0)
  • 2021-01-23 09:37

    I had the same problem. user1272267 answer worked (thanks), but it bothered me that I didn't understand why, I also wasn't sure if I would end up breaking the project for my colleagues who it worked fine for.

    So I did a bit more digging and found that in the registry there was a key; reg hkcr\typelib{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0 (Note the 2.0)

    I changed the 2.0 to 2.1 and hey presto, everything worked fine. I also checked the DLL and it turned out my copy was older than my colleagues copy. I think this may be because when I installed service pack 6 I kept some of the original files when asked since the replacement files were for American english and I had the UK version, but i'm not 100% certain of this

    0 讨论(0)
  • 2021-01-23 09:41

    you can also open the project file (.vbp file) in notepad where you see something like the following :

    Type=Exe
    Form=frmComFX.frm
    Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\Windows\SysWOW64\stdole2.tlb#OLE Automation
    Object={648A5603-2C6E-101B-82B6-000000000014}#1.1#0; MSCOMM32.OCX
    Object={5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0; MSFLXGRD.OCX
    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
    Form=frmSetup.frm
    Module=modFX; modFX.bas
    IconForm="frmComFX"
    Startup="frmComFX"
    HelpFile=""
    Title="ComFX"
    Command32=""
    Name="comFX"
    

    the lines that start with 'object-' contain the registry key with which the ocx is registered ... you can now open regedit (start - execute - regedit) and search for this key .. be careful though what you do in regedit, you might screw up your visual basic installation or even your complete windows :)

    of course you can also remove visual basic and reinstall it to get the registrations back

    0 讨论(0)
  • 2021-01-23 09:42

    Windows 7 64 bit; just installed VS6 and VS6 SP6 (with difficulty)but my project from Win XP gave the "MSCOMCTL.OCX could not be loaded" error.

    I found Nathan Hadley's answer gave me the clue and allowed me to open the project.... My userinterface.vbp file for the project (copied from Win XP) had #2.2 next to the MSCOMCTL.OCX reference but my registry class id had only 2.1. So I changed my userinterface.vbp entry to 2.1 and the project opened ok.

    However the next day I ran the VB6 SP6 cumulative update VB60SP6-KB2708437-x86-ENU again (may have not installed properly the first time) and now I have version 2.2 in the registry. So I changed my userInterface.vbp file back so the OCX reference has #2.2 once more and now the project still opens correctly and all runs ok.

    0 讨论(0)
  • 2021-01-23 09:43

    I had this same error. These 2 things worked for me:

    • Start Visual Studio 6 by right-click Run as Admin

    or

    • Disable the UAC prompt.

    hope it helps.

    0 讨论(0)
提交回复
热议问题