I can install a third party .ocx Dll with Inno. This puts the file in the system folder and registers it.. we hope.

I want to check for a .ocx .Dll when my app launches so that it doesnt try to access it unless it is installed and registered.

Assuming it was registered with regserver by shelling Regsvr32, how do you detect a registered .ocx by name, or even the exposed methods?

If it is not registered, I would need to register it programatically. I also need to do this in situations where i do not use the installer, like online upgrades.

is this:

The definitive code for doing that?