The COMDLG32.OCX missing or failed to load error can occur on your Windows 11 or Windows 10 computer when you attempt to run a program created using Visual Basic 6.0. This post provides the most suitable solutions affected PC users can apply to successfully fix this error on their device.
When you encounter this issue, you may receive either of the following error message;
Failed to load control ‘CommonDialog’ from COMDLG32.OCX. Your version of COMDLG32.OCX may be outdated.
Run-time error ‘339’: Component ‘COMDLG32.OCX’ or one of its dependencies not correctly registered: a file is missing or invalid
What is COMDLG32.OCX?
The comdlg32.ocx module is used in old Visual Basic applications. This ActiveX control is responsible for the functionality of common dialog boxes in VB applications, which includes the Open dialog box, ‘Save as’ dialog box, the Find and Replace editing dialog box, the Print dialog box, Print Setup, Page Setup printing dialog boxes, etc. This module will be supported on Windows 11 (and earlier), but has to be shipped along with the respective software.
COMDLG32.OCX missing or failed to load error
If COMDLG32.OCX is missing or failed to load on your Windows 11/10 device, you can try our recommended solutions in the order presented below and see if that helps to fix the error on your system.
- Initial checklist
- Update Visual Basic
- Re-register COMDLG32.OCX file
- Replace or Restore COMDLG32.OCX file
- Perform Reset This PC, Cloud Reinstall or In-place Upgrade Repair Windows
Let’s take a look at the description of the process involved concerning each of the listed solutions.
1] Initial checklist
Before you try the solutions below, as a quick solution, you can do the following, and after each task see if the issue in focus is resolved:
- Run full system AV scan. It’s possible a malware infection might have modified this particular ocx file. You can run a full system antivirus scan with Windows Defender or any reputable third-party AV product.
- Run SFC and DISM scan. You can run SFC scan and depending on the outcome, follow up with a DISM scan to fix system file corruption and corrupted or bad system image likely to trigger this error.
- Update Windows. Outdated Windows OS is susceptible to errors. So, check for updates and install any available bits on your Windows 11/10 device and see if the error reappears. On the other hand, if the error started after you recently updated Windows, you can perform System Restore or uninstall the update – but if you prefer not to do neither as your first line of troubleshooting, you can then go ahead with the solutions below.
2] Update Visual Basic
If the version of COMDLG32.OCX file on your Windows 11/10 system is outdated, you’re likely to encounter the COMDLG32.OCX is missing or failed to load error on your device. In this case, you can simply update Visual Basic of which the OCX file in question is one of the components.
Visual Basic 6.0 is made up of these key deliverables:
- Visual Basic 6.0 IDE (Integrated Development Environment).
- Visual Basic 6.0 Runtime: the base libraries and execution engine used to run VB 6.0 applications.
- Visual Basic 6.0 Runtime Extended Files: selected ActiveX control OCX files, libraries, and tools shipping with the IDE media and as an online release.
To update Visual Basic, do the following:
- Download the Visual Basic 6.0 Service Pack 6 Security Rollup Update package from Microsoft Download Center.
- Unzip the archive package.
- Now, copy the module
COMDLG32.OCX
and save it to the following location depending on your system architecture:
On Windows 64-bit system
C:\Windows\SysWOW64
On Windows 32-bit system
C:\Windows\System32
Once done, restart PC and see if the issue in hand is resolved. If not, proceed with the next solution.
3] Re-register COMDLG32.OCX file
As you have updated the COMDLG32.OCX file which is a component of Visual Basic, but the issue is unresolved, you can re-register the OCX file in question.
4] Replace or Restore COMDLG32.OCX file
By default, this module doesn’t ship with Windows and won’t be available on Winbindex, a new web service that allows users to see the information about Windows 11/10 OS files and download these files from Microsoft servers.
So, if you have accidentally deleted the COMDLG32.OCX file from your system, you can try and restore the file from Recycle Bin. You can also restore this file by logging into another working Windows computer that has been recently updated, navigate to the C:\Windows\System32\ or C:\Windows\SysWOW64 folder as the case may be; locate and copy the file to a USB drive, then plug the drive to the problematic PC, navigate to the exact folder copied from, then paste the file in that location.
5] Perform Reset This PC, Cloud Reinstall or In-place Upgrade Repair Windows
If at this point nothing has worked, and you have exhausted every other possible option to fix the error on your Windows 11/10 device to no avail, then it’s likely you’re dealing with system corruption that cannot be resolved normally. In this case, you can try Reset This PC, or Cloud Reinstall to reset every Windows component. You may also try In-place Upgrade Repair and see if that helps.
Any of these solutions should work for you!
Related post: MSCOMCTL.OCX or one of its dependencies not registered
Do you have to register OCX files?
When you distribute a Microsoft Visual application that uses an ActiveX control (.ocx file), the .ocx file must be registered correctly for it to work correctly provided that you select the OLE check box for the .ocx file. You can use the Microsoft Register Server (Regsvr32.exe) to register a 32- bit .ocx file manually on a 32-bit operating system.