How to Fix the ‘comdlg32.ocx’ missing Error on Windows?
The ‘comdlg32.ocx’ file is a part of the Visual Basic Runtime suite and it’s not located on your computer by default. It’s a part of the said suite and it’s used by many different applications. Now, the application using it may display the following error message:
Component comdlg32.ocx or one of its dependencies not correctly registered: a file is missing or invalid.
This message indicated that the file is either missing or corrupt. Resolving this problem shouldn’t be too difficult as many users were kind enough to post the methods they used to resolve the problem so make sure you check them out below!
What Causes the ‘comdlg32.ocx’ Missing Error on Windows?
The ‘comdlg32.ocx’ missing error on Windows is caused by two distinct issues. We have included them below for you to check out and, hopefully, be a step closer towards the final solution!
- Problems with the ‘comdlg32.exe’ file – If the file is missing, corrupt, or unregistered, you might need to replace it with a working version and re-register using Command Prompt. It might be possible that the problematic app doesn’t have access to the file so make sure you provide ownership and permissions!
- User Account Control (UAC) – Disabling UAC managed to resolve the problem for many users but this method will mostly depend on the problematic app.
Solution 1: Re-register the File
If the ‘comdlg32.ocx’ file on your computer has gone missing or corrupt, the best thing you can do is to download a working file and re-register using Command Prompt. It’s an easy set of steps but make sure you follow the instructions carefully since you are working with system files. Check it out below!
- Click this link to download a working comdlg32.ocx file on your computer. Clicking the link will initiate the download immediately. Locate the file on your computer, right-click on it, and choose Copy from the context menu which will appear.
- Next, open Libraries entry on the problematic PC or open any folder on the computer and click the This PC option from the left side menu.
- Navigate to the following location on your computer to locate the folder where you need to copy the file to:
C:\Windows\System32 >>32-bit Windows C:\Windows\SysWOW64 >>64-bit Windows
- Right-click anywhere inside the folder and choose the Paste option from the context menu which will appear. You might need to provide administrator permissions for that. Confirm any prompts to replace the file currently located there.
- Search for “Command Prompt” by typing it either right in the Start menu or by pressing the search button right next to it. Right-click the first entry which will pop up as a search result and select the “Run as administrator” context menu entry.
- Additionally, you can also use the Windows Logo Key + R key combination to bring up the Run dialog box. Type in “cmd” in the dialog box which appears and use the Ctrl + Shift + Enter key combination for administrator Command Prompt.
- Type in the following command in the window and make sure you press Enter after typing it out.
regsvr32 /u Comdlg32.ocx regsvr32 /i Comdlg32.ocx
- Try to open the app which throws the ‘comdlg32.ocx’ missing error and check to see if the problem still appears!
Solution 2: Run the Program in Compatibility Mode with Administrator Permissions
Running the program in compatibility mode for an older version of Windows than the one currently installed on your computer worked for many users. In order cases, running the problematic program’s executable with administrator permissions managed to resolve the problem with the comdlg32.ocx file. You can try both or one of them at the same time. Note that this method mostly depends on the program throwing the error!
- Locate the program’s executable file and change its properties by right-clicking its entry either on the Desktop, the Start menu or the Search results window and choose Properties. Navigate to the Compatibility tab in the Properties window and check the box next to the Run this program as an administrator.
- Under the Compatibility mode section, check the box next to the Run this program in compatibility mode for option and choose Windows 8 or 7 from the drop-down list before accepting the changes. If this option was already checked, uncheck it completely.
- Make sure you confirm any dialogs which may appear for you to confirm with admin privileges and the program should launch with admin privileges from now on. Open it by double-clicking its icon and try to see if the error still appears.
Solution 3: Change Ownership and Provide Full Permissions for the ‘comdlg32.ocx’ File
If the file can’t be accessed properly by the application which is displaying the error message, this error will persist and you won’t be able to use the app. However, it’s possible to change the owner and the permissions for the ‘comdlg32.ocx’ file so that everyone can access it. Of course, to proceed with the steps below, you will need to have administrator permissions!
- Open Libraries entry on the problematic PC or open any folder on the computer and click the This PC option from the left side menu.
- Navigate to the following location on your computer to locate the folder where the ‘comdlg32.ocx’ file is located:
C:\Windows\System32 >>32-bit Windows C:\Windows\SysWOW64 >>64-bit Windows
- You will need to take ownership of the ocx file located inside the folder provided above before proceeding. Right-click the file, then click Properties, and then click the Security tab. Click the Advanced button. The “Advanced Security Settings” window will appear. Here you need to change the Owner of the key.
- Click the Change link next to the “Owner:” label The Select User or Group window will appear.
- Select the user account via the Advanced button or just type your user account in the area which says ‘Enter the object name to select’ and click OK. Add the Everyone account.
- Click the Add button below and follow it up by clicking the Select a principal button at the top. Select the user account via the Advanced button or just type your user account in the area which says ‘Enter the object name to select‘ and click OK. Add the Everyone account.
- Under the Basic permissions section, make sure you choose Full control before applying the changes you have made.
- Check to see if the problem has been resolved and if you are still seeing the ‘comdlg32.ocx’ missing error message on your computer!
Solution 4: Disable UAC
Disabling UAC might be useful when the error appears in specific programs. UAC is not exactly a prime security feature as it only prompts the user when they are about to make some more significant changes to their computer. If anything, turning it off will disable some annoying prompts which appear when opening system tools
- Open Control Panel by searching for it in the Start menu. You can also use the Windows Key + R key combination, type in “control.exe” in the Run box which will appear and click OK.
- Change the View by option in Control Panel to Large Icons and locate the User Accounts option by scrolling or looking at the bottom.
- Open it and click the “Change User Account Control Settings” button. You will notice that there are several different levels you can choose on the security slider.
- Try decreasing this value by one if it’s at the top slider and check to see if it helped after launching the problematic program. Repeat the process if the error still appears.
- We recommend you turn off UAC for now as the program should probably launch successfully and try enabling it after.