/*********************************************************************** * DllGetClassObject [OLE32.@] */ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID iid,LPVOID *ppv) { HRESULT hr; *ppv = NULL; if (IsEqualIID(rclsid,&CLSID_DfMarshal)&&( IsEqualIID(iid,&IID_IClassFactory) || IsEqualIID(iid,&IID_IUnknown) ) ) return MARSHAL_GetStandardMarshalCF(ppv); if (IsEqualIID(rclsid,&CLSID_StdGlobalInterfaceTable) && (IsEqualIID(iid,&IID_IClassFactory) || IsEqualIID(iid,&IID_IUnknown))) return StdGlobalInterfaceTable_GetFactory(ppv); if (IsEqualCLSID(rclsid, &CLSID_FileMoniker)) return FileMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_ItemMoniker)) return ItemMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_AntiMoniker)) return AntiMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_CompositeMoniker)) return CompositeMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_ClassMoniker)) return ClassMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_PointerMoniker)) return PointerMonikerCF_Create(iid, ppv); if (IsEqualGUID(rclsid, &CLSID_StdComponentCategoriesMgr)) return ComCatCF_Create(iid, ppv); hr = OLE32_DllGetClassObject(rclsid, iid, ppv); if (SUCCEEDED(hr)) return hr; return Handler_DllGetClassObject(rclsid, iid, ppv); }
/*********************************************************************** * DllGetClassObject [OLE32.@] */ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID iid,LPVOID *ppv) { *ppv = NULL; if (IsEqualIID(rclsid, &CLSID_PSFactoryBuffer)) return IPSFactoryBuffer_QueryInterface((IPSFactoryBuffer *)&lppsfac, iid, ppv); if (IsEqualIID(rclsid,&CLSID_DfMarshal)&&( IsEqualIID(iid,&IID_IClassFactory) || IsEqualIID(iid,&IID_IUnknown) ) ) return MARSHAL_GetStandardMarshalCF(ppv); if (IsEqualIID(rclsid,&CLSID_StdGlobalInterfaceTable) && (IsEqualIID(iid,&IID_IClassFactory) || IsEqualIID(iid,&IID_IUnknown))) return StdGlobalInterfaceTable_GetFactory(ppv); if (IsEqualCLSID(rclsid, &CLSID_FileMoniker)) return FileMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_ItemMoniker)) return ItemMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_AntiMoniker)) return AntiMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_CompositeMoniker)) return CompositeMonikerCF_Create(iid, ppv); if (IsEqualCLSID(rclsid, &CLSID_ClassMoniker)) return ClassMonikerCF_Create(iid, ppv); FIXME("\n\tCLSID:\t%s,\n\tIID:\t%s\n",debugstr_guid(rclsid),debugstr_guid(iid)); return CLASS_E_CLASSNOTAVAILABLE; }