@Jayant Gupta:
The problem occurs when you wrote programs in VB6 and used the ActiveX runtime files COMDLG32.OCX, MSCOMCTL.OCX (and others). When you try to open a compiled version on win7 or later, you get errors saying these ActiveX files are missing or not registered. Portable VB6 (dunno where I got that) has the same problem so it's not limited to compiled code.
Windows XP, Vista, 7 - C: Windows System32 If you use a 64-bit version of Windows, you should also copy mscomctl.ocx to C: Windows SysWOW64 Make a backup copy of the original files. The VB6 IDE is broken as of 14 December 2017 with regard to MSCOMCTL.OCX. If you copy the MSCOMCTL.OCX from c: Program Files (x86) Microsoft Office root VFS SystemX86 to c: Windows SysWOW64 then it appears to work - HOWEVER the VB6 IDE will now show 2 copies of the mscomctl.ocx possibly due to registration problems.
Jul 14, 2016. Error '339': Component 'MSCOMCTL.OCX' or one of its dependencies not correctly registered: a file is missing or invalid warning message and not able to install the product on my Windows 10 machine. File in this command line after regsvr32. Say: regsvr32 “C: Windows System32 MSCOMCTL.OCX” 7. The first version of MSCOMCTL.OCX was released for the Windows XP Operating System on inside Office XP. Locate your Windows operating system version in the list of below 'Download MSCOMCTL.OCX Files'. Click the appropriate 'Download Now' button and download your Windows file version. Leave a Like and a Sub if this Helped! How to fix MSCOMCTL.OCX error Windows This works on all versions of windows from 8.0 - 10.0 Make Sure You Run CMD As. May 15, 2016 - Problem. You want to run your 'old' application on Windows 10. However, the application can't start because 'its missing mscomctl.ocx'.
@ MichaelPageUSMC
On windows 7, these files are present but not yet registered. In Win10 they are not even present anymore. I can not say if Win8 is like win7 or win10, but it matters not. The solution is the same! If you encounter problems, read the notes in the second List
- Essential is to first find out if you have an x86 (32bits) or x64 (64 bits) version of Windows. For the x86 you have to work with the folder System32, whereas the x64 solution involves SysWOW64 instead.
- Locate the missing files anywhere. Old systems, install discs, installer folder for your progams. Any copy works! You will need them.
- Go to the folder where Windows is installed, usually C:Windows. If your OS is 32bits, go into System32. For 64-bits dive into SysWOW64. If not there already, then paste the files mentioned in step 2.
- Now you need to tell Windows to find them and use them. The basic command for that looks like this: regsvr32.exe 'C:WindowsSysWOW64COMDLG32.OCX'. For x86 use System32 instead of SysWOW64 in the command. See notes below if this step fails.
- For each command entered you should receive the message back that registering was a success. After you registered all the files you need, the program should work.
Troubleshooter:
- Cannot find out if you have 32bits or 64bits? Press the Windows button plus Pause/Break (next to F12) to open System. You can also navigate there from Control Panel - System (classic view) or Control Panel - System and Security - System (big icons). At 'type of system' it says 32bits or 64bits operating system.
- If you cannot locate the files you need, look for an installer for VB6 runtime files on MicroSoft's website. I think the filename is vbrun60sp5.exe but not certain.
- The files should be placed in mentioned folders, not in any of their subfolders or in the parent folder, Windows. This should not be a hard part.
- Run (Windows+R) may give an error on this command. An elevated command prompt (Control+Shift+Escape to open TaskManager, then hold down Control while pressing 'File - New process') should not. If even an elevated prompt does yield error messages, it may be needed to first give the command 'regsvr32 wmnetmgr.dll' in the elevated prompt. But only ONCE!. Then retry the other commands. If that fails too, please report back here with all of the error messages you have received, in full.
It would be smart to copy/paste above instructions into a textfile on your harddrive. Keep it near a spare copy of the ActiveX files and the VB6 runtime installers you may or may not have needed, and a few more files like VB6.0-KB290887-X86 (don't recall what it was for, though) and the update Jayant mentioned, https://support.microsoft.com/en-us/kb/896559. All that if you ever had to re-install, then you got all you need to fix the problem once again.
While trying to run a program made for previous Windows versions, I am repeatedly faced with the following message:
'Component 'MSCOMCTL.OCX' not correctly registered: file is missing or invalid'
when trying to run it as administrator.
The third party program in question is Heaven & Earth, widelly used in SFRPG communities and well recomended, despite being old.
I have also tried to run it in compatibility mode (Windows XP (Sevice Pack 3)), but got the same error.
I have already unninstalled, deleted all files, cleared the recycle bin, downloaded the program again and reinstalled it. Same error.
I have found the MSCOMCTL.OCX file in
C:Program Files (x86)Microsoft OfficerootVFSSystemX86
Mscomctl.ocx 64-bit
I find it weird because, when searching for a solution on the internet, I have come across experts telling people to look for this file in
C:WindowsSysWOW64.
Mscomctl Ocx Download Windows 10 64
However, when looking in SysWOW64, i have only found a diferent file with a similar name:
mscomctl.ocx (same thing, all minuscules).
I am not sure what to do next, and am fearful of trying any of the solutions found in forums for similar problems, in case this file is of great importance to the system.
How can I solve the error?
Thank you in advance.