Author |
Topic |
|
GregSTXS
6 Posts |
Posted - 08 Jan 2010 : 15:41:45
|
I'm trying to use the Imaging API to load JPGs and PNGs, but the following call to CoCreate always fails with HRESULT -2147221163 {Interface not registered }. IImagingFactory* m_pImagingFactory = NULL; HRESULT hr = CoCreateInstance( CLSID_ImagingFactory, NULL, CLSCTX_INPROC_SERVER, IID_IImagingFactory, (void**)&m_pImagingFactory); GDIEX_MODULES_IMAGING is defined in 5.00.39 Pro's ceconfig.h. Imaging.dll is present in the Windows directory. The value for CLSID_ImagingFactory is listed in HKEY_CLASSES_ROOT\CLSID. The value for IID_IImagingFactory is NOT listed in HKEY_CLASSES_ROOT\INTERFACE, which seems to match the error code. Any ideas on how to get this working? thanks Greg |
|
beitman
63 Posts |
Posted - 08 Jan 2010 : 18:29:59
|
BitsyXb 5.00.39 Pro has the following in the registry:
[HKEY_CLASSES_ROOT\CLSID\{327ABDA8-072B-11D3-9D7B-0000F81EF32E}] @="ImagingFactory COM Component" [HKEY_CLASSES_ROOT\CLSID\{327ABDA8-072B-11D3-9D7B-0000F81EF32E}\InProcServer32] @="imaging.dll" [HKEY_CLASSES_ROOT\CLSID\{327ABDA8-072B-11D3-9D7B-0000F81EF32E}\ProgID] @="imaging.Factory"
[HKEY_CLASSES_ROOT\imaging.Factory] @="ImagingFactory COM Component" [HKEY_CLASSES_ROOT\imaging.Factory\CLSID] @="{327ABDA8-072B-11D3-9D7B-0000F81EF32E}"
Are you saying that you don't see those? |
|
|
GregSTXS
6 Posts |
Posted - 11 Jan 2010 : 12:01:15
|
No, those are all there. I was just looking in the wrong place (HLCR\INTERFACE). But since they are there, why is the call to CoCreateInstance failing with -2147221163 {Interface not registered }? I'm including INITGUID.h, imaging.h, GdiPlusEnums.h, linking with imaging.lib, and of course calling CoInitialize. Is there anything else I need to do on the compiler side? Do you have a test app I could try? |
|
|
|
Topic |
|
|
|