Andrew Nguyen : oleaut32: Partially implement UnRegisterTypeLibForUser.
Alexandre Julliard
julliard at winehq.org
Fri Jul 30 10:24:17 CDT 2010
Module: wine
Branch: master
Commit: f2610a61093a8fb0b75ee043a524f07a1418c249
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f2610a61093a8fb0b75ee043a524f07a1418c249
Author: Andrew Nguyen <anguyen at codeweavers.com>
Date: Fri Jul 30 07:44:05 2010 -0500
oleaut32: Partially implement UnRegisterTypeLibForUser.
---
dlls/oleaut32/oleaut32.spec | 1 +
dlls/oleaut32/typelib.c | 20 ++++++++++++++++++++
include/oleauto.h | 1 +
3 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/oleaut32.spec b/dlls/oleaut32/oleaut32.spec
index 239b022..a86486f 100644
--- a/dlls/oleaut32/oleaut32.spec
+++ b/dlls/oleaut32/oleaut32.spec
@@ -411,6 +411,7 @@
440 stdcall VarUI8FromUI4(long ptr)
441 stdcall VarUI8FromDec(long ptr)
442 stdcall RegisterTypeLibForUser(ptr wstr wstr)
+443 stdcall UnRegisterTypeLibForUser(ptr long long long long)
@ stdcall -private DllCanUnloadNow()
@ stdcall -private DllGetClassObject(ptr ptr ptr)
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index e168953..46c0d28 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -926,6 +926,26 @@ HRESULT WINAPI RegisterTypeLibForUser(
return RegisterTypeLib(ptlib, szFullPath, szHelpDir);
}
+/******************************************************************************
+ * UnRegisterTypeLibForUser [OLEAUT32.443]
+ * Removes information about a type library from the user registry
+ *
+ * RETURNS
+ * Success: S_OK
+ * Failure: Status
+ */
+HRESULT WINAPI UnRegisterTypeLibForUser(
+ REFGUID libid, /* [in] GUID of the library */
+ WORD wVerMajor, /* [in] major version */
+ WORD wVerMinor, /* [in] minor version */
+ LCID lcid, /* [in] locale id */
+ SYSKIND syskind)
+{
+ FIXME("(%s, %u, %u, %u, %u) unregistering the typelib system-wide\n",
+ debugstr_guid(libid), wVerMajor, wVerMinor, lcid, syskind);
+ return UnRegisterTypeLib(libid, wVerMajor, wVerMinor, lcid, syskind);
+}
+
/*======================= ITypeLib implementation =======================*/
typedef struct tagTLBCustData
diff --git a/include/oleauto.h b/include/oleauto.h
index 573f5cc..f9862e7 100644
--- a/include/oleauto.h
+++ b/include/oleauto.h
@@ -751,6 +751,7 @@ HRESULT WINAPI QueryPathOfRegTypeLib(REFGUID,WORD,WORD,LCID,LPBSTR);
HRESULT WINAPI RegisterTypeLib(ITypeLib*,OLECHAR*,OLECHAR*);
HRESULT WINAPI UnRegisterTypeLib(REFGUID,WORD,WORD,LCID,SYSKIND);
HRESULT WINAPI RegisterTypeLibForUser(ITypeLib*,OLECHAR*,OLECHAR*);
+HRESULT WINAPI UnRegisterTypeLibForUser(REFGUID,WORD,WORD,LCID,SYSKIND);
VOID WINAPI ClearCustData(LPCUSTDATA);
More information about the wine-cvs
mailing list