Module: wine Branch: master Commit: 064a5918df9ec21b3724e18fe3f03781876b3007 URL: http://source.winehq.org/git/wine.git/?a=commit;h=064a5918df9ec21b3724e18fe3...
Author: Jacek Caban jacek@codeweavers.com Date: Mon Mar 12 13:02:03 2012 +0100
msident: Added DLL registration implementation.
---
dlls/msident/Makefile.in | 2 ++ dlls/msident/msident.c | 23 +++++++++++++++++++++++ dlls/msident/msident.spec | 2 ++ dlls/msident/msident_classes.idl | 25 +++++++++++++++++++++++++ 4 files changed, 52 insertions(+), 0 deletions(-)
diff --git a/dlls/msident/Makefile.in b/dlls/msident/Makefile.in index e52a4c8..29ebb8e 100644 --- a/dlls/msident/Makefile.in +++ b/dlls/msident/Makefile.in @@ -3,4 +3,6 @@ MODULE = msident.dll C_SRCS = \ msident.c
+IDL_R_SRCS = msident_classes.idl + @MAKE_DLL_RULES@ diff --git a/dlls/msident/msident.c b/dlls/msident/msident.c index d6c9935..69ef459 100644 --- a/dlls/msident/msident.c +++ b/dlls/msident/msident.c @@ -19,11 +19,15 @@ #define COBJMACROS
#include "windows.h" +#include "msident.h" +#include "rpcproxy.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msident);
+static HINSTANCE msident_instance; + /****************************************************************** * DllMain (msident.@) */ @@ -36,6 +40,7 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv) case DLL_WINE_PREATTACH: return FALSE; /* prefer native version */ case DLL_PROCESS_ATTACH: + msident_instance = hInstDLL; DisableThreadLibraryCalls(hInstDLL); break; } @@ -59,3 +64,21 @@ HRESULT WINAPI DllCanUnloadNow(void) { return S_FALSE; } + +/*********************************************************************** + * DllRegisterServer (msident.@) + */ +HRESULT WINAPI DllRegisterServer(void) +{ + TRACE("()\n"); + return __wine_register_resources(msident_instance); +} + +/*********************************************************************** + * DllUnregisterServer (msident.@) + */ +HRESULT WINAPI DllUnregisterServer(void) +{ + TRACE("()\n"); + return __wine_unregister_resources(msident_instance); +} diff --git a/dlls/msident/msident.spec b/dlls/msident/msident.spec index 079117d..f36e160 100644 --- a/dlls/msident/msident.spec +++ b/dlls/msident/msident.spec @@ -1,2 +1,4 @@ @ stdcall -private DllCanUnloadNow() @ stdcall -private DllGetClassObject(ptr ptr ptr) +@ stdcall -private DllRegisterServer() # not exported by native +@ stdcall -private DllUnregisterServer() # not exported by native diff --git a/dlls/msident/msident_classes.idl b/dlls/msident/msident_classes.idl new file mode 100644 index 0000000..b3707a9 --- /dev/null +++ b/dlls/msident/msident_classes.idl @@ -0,0 +1,25 @@ +/* + * Copyright 2012 Jacek Caban for CodeWeavers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + + +[ + helpstring("LW Identities"), + threading(both), + uuid(a9ae6c91-1d1b-11d2-b21a-00c04fa357fa) +] +coclass UserIdentityManager {}