Click to See Complete Forum and Search --> : COM


john dixson
April 13th, 1999, 03:24 PM
I am having a problem accessing a COM object from a 16 bit windows application
when I use ::CoCreateInstance() it returns REGDB_E_CLASSNOTREG.

When I compile the program as a 32 bit app ::CoCreateInstance() works fine.

Is it not possible to use a 32 bit COM object with a 16 bit app?

I need to use the COM object from an older 16 bit application, the old application cannot be converted to a 32 bit application and it needs to use
the COM object.

Thanks

SKB
April 13th, 1999, 03:44 PM
I think it might have something to do with the way it is registered. If you look under the CLSID for your COM Object, you find that the Location of the COM Object is held under InprocServer32 (if a dll) else LocalServer32 (if exe). When it is a 16Bit app it might need and extra register entry InprocServer or LocalServer. This is only a guess....