I am having weird problems with MSCOMCTL.OCX in VB6.
I think it might have been caused when I attempted to install some old software for communicating with an engraving machine. The install was only partially successful because of missing OCX files. The application was listed in program files though, but when it was loaded only some functionality worked.
When I next tried to open a VB6 project it displayed an error about not being able to load MSCOMCTL.OCX. VB6 was previous working without any issues. At first I thought that the engraving tools installation had corrupted some files so I reinstalled VB6 and Service Pack 6 but that didn't fix the issue. Instead the the error message said '' could not be loaded.
I went through the forum posts here VB6 IDE cannot load MSCOMCTL.OCX after update KB 2687323 and here Object Library Not Registered When Adding Windows Common Controls 6.0 but none of the solutions posted worked.
I managed to get the engraving software uninstalled, went through the installation of VB6 again (plus some playing around with re-registering dlls) and I managed to get a project to open. This project definitely has got Microsoft Window Common Controls 6 selected in the components. The problem is that this is the only project I can open. All other projects fail with the error '' could not be loaded. Even starting a new project gives the error '' could not be loaded when selecting Microsoft Windows Common Controls 6.
I've looked at the project files and the reference to MSCOMCTL.OCX in the project that works and the projects that don't are the same:
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX
Could someone help me get VB6 working again? Does any one know why a single project can load MSCOMCTL.OCX without any problems but all other projects, including brand new projects, throw an error?
Edit: Strangely, so long after the original post, this question just got flagged for being a possible duplicate. In my comments to an answer below I specifically say that I tried the solution that is proposed in as an answer to that question but it did not work.