This is a registry problem that may occur for a wide variety of reasons. You are getting this error because registration of a control was unsuccessful. It could be that the DLL is not in the path, the control is loading the incorrect DLL, or the DLL may be the wrong version.
There is a solution when call to DllRegisterServer failed.
Use the Regsvr32.exe tool for registering and unregistering OLE controls, including DLL and OCX files, which are self-registerable. The Regsvr432.exe utility is included in all Microsoft Internet explorer 3.0 versions or later, Windows 95 OEM Service release 2 or later, and Windows NT 4.0 Service Pack 5 or later. It is also installed in the System with Windows ME, Windows 98, or Windows 95; or in the System32 folder with Windows NT, Windows XP, Windows Vista, and Windows 7.
When using the Regsv432.exe utility, it will attempt to load the component, and call the DLLSelfRegister function. If successful, the utility will display a dialog box to indicate success; if not, you will see an error message.
TipFor more information, please see: How to fix Registry error #0x80020009