Hans Leidekker : wuapi: Add class factory for CLSID_AutomaticUpdates.
Alexandre Julliard
julliard at winehq.org
Wed Jan 28 08:02:49 CST 2009
Module: wine
Branch: master
Commit: ecb5bdf9013ad101ae8b47a29c546437d3a8fc46
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ecb5bdf9013ad101ae8b47a29c546437d3a8fc46
Author: Hans Leidekker <hans at codeweavers.com>
Date: Tue Jan 27 16:14:15 2009 +0100
wuapi: Add class factory for CLSID_AutomaticUpdates.
---
dlls/wuapi/main.c | 12 +++++++++---
dlls/wuapi/regsvr.c | 6 ++++++
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/dlls/wuapi/main.c b/dlls/wuapi/main.c
index 18a86bc..d8d6fcb 100644
--- a/dlls/wuapi/main.c
+++ b/dlls/wuapi/main.c
@@ -111,7 +111,8 @@ static const struct IClassFactoryVtbl wucf_vtbl =
wucf_LockServer
};
-static wucf updatecf = { &wucf_vtbl, UpdateSession_create };
+static wucf sessioncf = { &wucf_vtbl, UpdateSession_create };
+static wucf updatescf = { &wucf_vtbl, AutomaticUpdates_create };
BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID lpv )
{
@@ -135,8 +136,13 @@ HRESULT WINAPI DllGetClassObject( REFCLSID rclsid, REFIID iid, LPVOID *ppv )
TRACE("%s %s %p\n", debugstr_guid(rclsid), debugstr_guid(iid), ppv);
if (IsEqualGUID( rclsid, &CLSID_UpdateSession ))
- cf = (IClassFactory *)&updatecf.vtbl;
-
+ {
+ cf = (IClassFactory *)&sessioncf.vtbl;
+ }
+ else if (IsEqualGUID( rclsid, &CLSID_AutomaticUpdates ))
+ {
+ cf = (IClassFactory *)&updatescf.vtbl;
+ }
if (!cf) return CLASS_E_CLASSNOTAVAILABLE;
return IClassFactory_QueryInterface( cf, iid, ppv );
}
diff --git a/dlls/wuapi/regsvr.c b/dlls/wuapi/regsvr.c
index 875902c..10d3974 100644
--- a/dlls/wuapi/regsvr.c
+++ b/dlls/wuapi/regsvr.c
@@ -383,6 +383,12 @@ static struct regsvr_coclass const coclass_list[] = {
"wuapi.dll",
"Both"
},
+ { &CLSID_AutomaticUpdates,
+ "CLSID_AutomaticUpdates",
+ NULL,
+ "wuapi.dll",
+ "Both"
+ },
{ NULL } /* list terminator */
};
More information about the wine-cvs
mailing list