We have a legacy 3rd party program that is failing with the error "Class Not Registered" when it tries to execute certain functionality. Is there a way to tell what class it's looking for? Sometimes it says "Catastrophic error" instead.
Tried Dependency Walker statically and profiling, Kernal32.exe errors. I'm guessing that's the instantiation failing. It didn't reveal any missing dependencies.
The ProcessMon didn't reveal any failed attempts to access the registry or a particular filepath.
Have spent several days with a debugger and tools trying to figure out what file it is. We have a running production system that we can access with a non-Admin user account.
The 3rd party app was written in Delphi if that makes a difference. Our calling app is C++.
Update: Using the Process Monitor from Sysinternals and a filter to narrow the natural registry read failures from the unusual ones I was able to find the GUID that was missing and register the corresponding dll.