Today when I run an old tool on my x64 Windows 7, following error message is displayed:

Component ‘COMDLG32.OCX’ or one of its dependencies is not correctly registered: a file is missing or invalid.

comdlg32.ocx missing error

Here is how to resolve comdlg32.ocx missing error.

  1. Download and extract comdlg32.ocx from zip file
  2. Move comdlg32.ocx to c:Windowssystem32 folder. For 64bit Vista/Win7, move comdlg32.ocx to c:WindowsSysWOW64
  3. Open a command line window and run following command:
    regsvr32 c:Windowssystem32comdlg32.ocx

    Note: a) On 64bit Vista/Win7, run this command instead:

    regsvr32 c:WindowsSysWOW64comdlg32.ocx

    b) For Vista/Win7 with UAC turn on, the above command needs to be run from elevated command prompt.

  4. Once comdlg32 is registered successfully, following message will prompt, DllRegisterServer in C:WINDOWSSystem32comdlg32.ocx succeeded.
  5. Now launch the application again you should not see file missing error.

Update: Important note if you use Windows 7: registering comdlg32.ocx must be done as administrator, or regsvr32.exe will fail with error 0x8002801c. To do this as administrator, Go to All Programs -> Accessories -> Command Prompt’, right click on ‘Command Prompt’ icon, and click on ‘Run as administrator’ to start a command prompt, then run the regsvr32 command