Hi, I had the same error message. In my case there was a missing IDispatch interface registry key defined as a GUID with the value of {00020400-0000-0000-C000-000000000046}.
I suggest to use indispensable tools for investigation and hopefully fix the problem without reinstalling entire OS. These tools are called FileMon (file system activity) and RegMon (registry activity) by Mark Russinovich (there is also a hybrid tool called Process Monitor but is more "bloated" and OS demaning and as an example for Windows XP it requires SP2 - so I prefer the lighter separate tools.)
Before running one or the other you need to configure them to make all the missing entries highlighted during filesystem/registry monitoring activity. To do this press CTRL+L keys in each and in the "Highlight" box put "NOT FOUND" and click "OK". You will see all the missing registry entries highlighted in red and also missing file entries highlighted in red too.
But you can skip investigating the problem and try to fix it by reinstating the registry key below:
------------ Copy everything in between
[Version]
Signature = "$Windows NT$"
ClassGUID={00000000-0000-0000-0000-000000000000}
DriverVer=07/01/2001,5.1.2600.0
[DefaultInstall]
AddReg = IDispatch.Install.Reg
[IDispatch.Install.Reg]
HKCR,"Interface{00020400-0000-0000-C000-000000000046}","",0x00000002,"IDispatch"
HKCR,"Interface{00020400-0000-0000-C000-000000000046}\NumMethods","",0x00000002,"7"
HKCR,"Interface{00020400-0000-0000-C000-000000000046}\ProxyStubClsid","",0x00000002,"{00020420-0000-0000-C000-000000000046}"
HKCR,"Interface{00020400-0000-0000-C000-000000000046}\ProxyStubClsid32","",0x00000002,"{00020420-0000-0000-C000-000000000046}"
------------ Copy everything in between
and paste copied lines into a newly created file in notepad and save it as "IDispatch.addreg.inf" in your Windows "INF" folder (be sure that option "Show hidden files and folders" in Folder Options is ticked).
After that, right click on that file and choose "Install" from explorer context menu or invoke from command prompt or Start Menu/Run the following:
rundll32.exe SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 IDispatch.addreg.inf
Registry files created by Windows Registry Editor have a bit different structure than the above keys pulled from HIVECLS.INF file(this one and few others are used to create the registry hives(fundamental keys, subkeys & values) for the installation of OS) and so these keys will not be imported by Windows Registry Editor without applying modifications.
Because I want to preserve the original structure I usually create small inf files (like the above one) and install them with either of the two methods described. Hope that helps!
--
Regards,
Robert Martin Konopka