static HRESULT WINAPI ClassFactory_CreateInstance(IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppv) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); TRACE ("(%p, %s, %p)\n", pUnkOuter, debugstr_dmguid(riid), ppv); return This->fnCreateInstance(riid, ppv, pUnkOuter); }
/******************************************************************************* * IDirectDrawClassFactory::CreateInstance * *******************************************************************************/ static HRESULT WINAPI IDirectDrawClassFactoryImpl_CreateInstance(IClassFactory *iface, IUnknown *UnkOuter, REFIID riid, void **obj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); TRACE("(%p)->(%p,%s,%p)\n",This,UnkOuter,debugstr_guid(riid),obj); return This->pfnCreateInstance(UnkOuter, riid, obj); }
static HRESULT WINAPI XFCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); HRESULT hres; LPUNKNOWN punk; TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj); *ppobj = NULL; hres = This->pfnCreateInstance(pOuter, (LPVOID *) &punk); if (SUCCEEDED(hres)) { hres = IUnknown_QueryInterface(punk, riid, ppobj); IUnknown_Release(punk); } return hres; }
static HRESULT WINAPI MsiCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); IUnknown *unk = NULL; HRESULT r; TRACE("%p %p %s %p\n", This, pOuter, debugstr_guid(riid), ppobj); r = This->create_object( pOuter, (LPVOID*) &unk ); if (SUCCEEDED(r)) { r = IUnknown_QueryInterface( unk, riid, ppobj ); IUnknown_Release( unk ); } return r; }
static HRESULT WINAPI DSCF_CreateInstance( LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); TRACE("(%p, %p, %s, %p)\n", This, pOuter, debugstr_guid(riid), ppobj); if (pOuter) return CLASS_E_NOAGGREGATION; if (ppobj == NULL) { WARN("invalid parameter\n"); return DSERR_INVALIDPARAM; } *ppobj = NULL; return This->pfnCreateInstance(riid, ppobj); }
static HRESULT WINAPI DSCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = (IClassFactoryImpl *)iface; HRESULT hres; LPUNKNOWN punk; TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj); *ppobj = NULL; if (pOuter && !IsEqualGUID(&IID_IUnknown, riid)) return E_INVALIDARG; hres = This->pfnCreateInstance(pOuter, (LPVOID *) &punk); if (SUCCEEDED(hres)) { hres = IUnknown_QueryInterface(punk, riid, ppobj); IUnknown_Release(punk); } return hres; }
static HRESULT WINAPI MMCF_CreateInstance( LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = (IClassFactoryImpl *)iface; TRACE("(%p, %p, %s, %p)\n", This, pOuter, debugstr_guid(riid), ppobj); if (pOuter) return CLASS_E_NOAGGREGATION; if (ppobj == NULL) { WARN("invalid parameter\n"); return E_POINTER; } *ppobj = NULL; return This->pfnCreateInstance(riid, ppobj); }
static HRESULT WINAPI DSCF_CreateInstance(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); HRESULT hres; LPUNKNOWN punk; TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj); *ppobj = NULL; if(pOuter && !IsEqualGUID(&IID_IUnknown, riid)) return E_NOINTERFACE; hres = This->pfnCreateInstance(pOuter, (LPVOID *) &punk); if (SUCCEEDED(hres)) { hres = IUnknown_QueryInterface(punk, riid, ppobj); IUnknown_Release(punk); } return hres; }
static HRESULT WINAPI DSCF_CreateInstance(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); HRESULT hres = ERROR_SUCCESS; LPUNKNOWN punk; TRACE("(%p)->(%p,%s,%p)\n", This, pOuter, debugstr_guid(riid), ppobj); if (!ppobj) return E_POINTER; /* Enforce the normal OLE rules regarding interfaces and delegation */ if (pOuter && !IsEqualGUID(riid, &IID_IUnknown)) return E_NOINTERFACE; *ppobj = NULL; punk = This->pfnCreateInstance(pOuter, &hres); if (!punk) { /* No object created, update error if it isn't done already and return */ if (SUCCEEDED(hres)) hres = E_OUTOFMEMORY; return hres; } if (SUCCEEDED(hres)) { hres = IUnknown_QueryInterface(punk, riid, ppobj); } /* Releasing the object. If everything was successful, QueryInterface should have incremented the refcount once more, otherwise this will purge the object. */ IUnknown_Release(punk); return hres; }
static HRESULT WINAPI IClassFactory_fnCreateInstance( LPCLASSFACTORY iface, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObject) { IClassFactoryImpl *This = (IClassFactoryImpl *)iface; if (!ppvObject) return E_INVALIDARG; *ppvObject = NULL; if ( This->riidInst==NULL || IsEqualCLSID(riid, This->riidInst) || IsEqualCLSID(riid, &IID_IUnknown) ) { /* instantiate object */ return This->lpfnCI(pUnkOuter, riid, ppvObject); } return E_NOINTERFACE; }
/************************************************************************* * CDLGCF_CreateInstance (IClassFactory) */ static HRESULT WINAPI CDLGCF_CreateInstance(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppobj) { IClassFactoryImpl *This = impl_from_IClassFactory(iface); return This->cf(pOuter, riid, ppobj); }
static HRESULT WINAPI DICF_CreateInstance(LPCLASSFACTORY iface,LPUNKNOWN pOuter,REFIID riid,LPVOID *ppobj) { IClassFactoryImpl *This = (IClassFactoryImpl *)iface; TRACE("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj); return This->pfnCreateInstanceFactory(iface, pOuter, riid, ppobj); }
/************************************************************************ * WBCF_CreateInstance (IClassFactory) */ static HRESULT WINAPI WBCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter, REFIID riid, LPVOID *ppobj) { IClassFactoryImpl *This = (IClassFactoryImpl *) iface; return This->cf(pOuter, riid, ppobj); }
/************************************************************************* * EFCF_CreateInstance (IClassFactory) */ static HRESULT WINAPI EFCF_CreateInstance(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppobj) { IClassFactoryImpl *This = (IClassFactoryImpl *)iface; return This->cf(pOuter, riid, ppobj); }