[v2 3/5] compobj.dll16: Implement CoCreateInstance16().
Zebediah Figura
z.figura12 at gmail.com
Thu Feb 9 00:17:13 CST 2017
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/compobj.dll16/compobj.c | 27 ++++++++++++++++-----------
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/dlls/compobj.dll16/compobj.c b/dlls/compobj.dll16/compobj.c
index aa87227..fa021b5 100644
--- a/dlls/compobj.dll16/compobj.c
+++ b/dlls/compobj.dll16/compobj.c
@@ -899,17 +899,22 @@ HRESULT WINAPI CoCreateGuid16(GUID *pguid)
* CoCreateInstance [COMPOBJ.13]
*/
HRESULT WINAPI CoCreateInstance16(
- REFCLSID rclsid,
- LPUNKNOWN pUnkOuter,
- DWORD dwClsContext,
- REFIID iid,
- LPVOID *ppv)
-{
- FIXME("(%s, %p, %x, %s, %p), stub!\n",
- debugstr_guid(rclsid), pUnkOuter, dwClsContext, debugstr_guid(iid),
- ppv
- );
- return E_NOTIMPL;
+ REFCLSID rclsid,
+ LPUNKNOWN pUnkOuter,
+ DWORD dwClsContext,
+ REFIID riid,
+ LPVOID *ppv)
+{
+ IClassFactory *cf;
+ HRESULT hr;
+
+ hr = CoGetClassObject16(rclsid, dwClsContext, NULL, &IID_IClassFactory, (void **)&cf);
+ if (FAILED(hr))
+ return hr;
+
+ hr = IClassFactory_CreateInstance(cf, pUnkOuter, riid, ppv);
+ IClassFactory_Release(cf);
+ return hr;
}
/***********************************************************************
--
2.7.4
More information about the wine-patches
mailing list