Ove Kaaven wrote:
Perhaps it would have been useful to be reminded of this earlier, but if what you're trying to do is to let a CoCreateInstance on a particular CLSID (like IE) create an instance of a different but compatible CLSID (like Mozilla), you could have just used the CoTreatAsClass() functionality (if someone implemented the necessary CoGetTreatAsClass call in CoGetClassObject, at least).
That sounds like a nice clean way to do it.
The only advantage I can thing of that my method may offer is that IE will just start working if it installed. Using CoTreatClassAs I presume you'll have to remember to hack the registry to stop Mozilla's Active X control being used in place of IE's... unless ofcourse IE remember to overwrite the registry keys that are used by CoTreatClassAs...
Mike