diff --git a/Src/Lib/ResourceHelper.cpp b/Src/Lib/ResourceHelper.cpp index 3ab4651..d7f7db6 100644 --- a/Src/Lib/ResourceHelper.cpp +++ b/Src/Lib/ResourceHelper.cpp @@ -396,8 +396,11 @@ HBITMAP LoadImageFile( const wchar_t *path, const SIZE *pSize, bool bUseAlpha, b CComPtr pFactory; if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory))) { - if (srcBmp) DeleteObject(srcBmp); - return NULL; + if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory1))) + { + if (srcBmp) DeleteObject(srcBmp); + return NULL; + } } CComPtr pBitmap; @@ -534,7 +537,10 @@ HBITMAP LoadImageResource( HMODULE hModule, const wchar_t *name, bool bTopDown, { CComPtr pFactory; if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory))) - return NULL; + { + if (FAILED(pFactory.CoCreateInstance(CLSID_WICImagingFactory1))) + return NULL; + } CComPtr pBitmap; if (hModule) diff --git a/Src/StartMenu/StartMenuDLL/ItemManager.cpp b/Src/StartMenu/StartMenuDLL/ItemManager.cpp index 9bbf787..c26733b 100644 --- a/Src/StartMenu/StartMenuDLL/ItemManager.cpp +++ b/Src/StartMenu/StartMenuDLL/ItemManager.cpp @@ -489,7 +489,8 @@ void CItemManager::LoadIconData::Init( void ) HIMAGELIST_QueryInterface(m_TempLists[i],IID_IImageList2,(void**)&m_pTempLists[i]); } } - m_pFactory.CoCreateInstance(CLSID_WICImagingFactory); + if (FAILED(m_pFactory.CoCreateInstance(CLSID_WICImagingFactory))) + m_pFactory.CoCreateInstance(CLSID_WICImagingFactory1); } void CItemManager::LoadIconData::Close( void )