Module: wine Branch: master Commit: f2cd77668ad77ef2f80166b6cf0625d44bdeebc9 URL: https://source.winehq.org/git/wine.git/?a=commit;h=f2cd77668ad77ef2f80166b6c... Author: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com> Date: Fri Jun 12 16:43:06 2020 -0500 directmanipulation: Register the DirectManipulationManager and DirectManipulationSharedManager classes. Signed-off-by: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com> Signed-off-by: Vijay Kiran Kamuju <infyquest(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/directmanipulation/Makefile.in | 2 ++ dlls/directmanipulation/directmanip.idl | 38 +++++++++++++++++++++++++ dlls/directmanipulation/directmanipulation.c | 12 ++++++++ dlls/directmanipulation/directmanipulation.spec | 4 +-- 4 files changed, 54 insertions(+), 2 deletions(-) diff --git a/dlls/directmanipulation/Makefile.in b/dlls/directmanipulation/Makefile.in index d09d652b61..331c2a8420 100644 --- a/dlls/directmanipulation/Makefile.in +++ b/dlls/directmanipulation/Makefile.in @@ -2,5 +2,7 @@ MODULE = directmanipulation.dll EXTRADLLFLAGS = -mno-cygwin +IDL_SRCS = directmanip.idl + C_SRCS = \ directmanipulation.c diff --git a/dlls/directmanipulation/directmanip.idl b/dlls/directmanipulation/directmanip.idl new file mode 100644 index 0000000000..ff00668ba5 --- /dev/null +++ b/dlls/directmanipulation/directmanip.idl @@ -0,0 +1,38 @@ +/* + * Copyright 2019 Alistair Leslie-Hughes + * + * 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 + */ +#pragma makedep register + +[ + uuid(54e211b6-3650-4f75-8334-fa359598e1c5), + threading(both) +] +coclass DirectManipulationManager +{ + interface IDirectManipulationManager2; + [default] interface IDirectManipulationManager; +} + +[ + uuid(99793286-77cc-4b57-96db-3b354f6f9fb5), + threading(both) +] +coclass DirectManipulationSharedManager +{ + interface IDirectManipulationManager2; + [default] interface IDirectManipulationManager; +} diff --git a/dlls/directmanipulation/directmanipulation.c b/dlls/directmanipulation/directmanipulation.c index 21458ba1fe..f808bc1a33 100644 --- a/dlls/directmanipulation/directmanipulation.c +++ b/dlls/directmanipulation/directmanipulation.c @@ -20,6 +20,8 @@ #include "windef.h" #include "winbase.h" +#include "oleidl.h" +#include "rpcproxy.h" #include "wine/debug.h" WINE_DEFAULT_DEBUG_CHANNEL(manipulation); @@ -43,6 +45,16 @@ BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, void *reserved) return TRUE; } +HRESULT WINAPI DllRegisterServer(void) +{ + return __wine_register_resources( dm_instance ); +} + +HRESULT WINAPI DllUnregisterServer(void) +{ + return __wine_unregister_resources( dm_instance ); +} + HRESULT WINAPI DllCanUnloadNow(void) { return S_FALSE; diff --git a/dlls/directmanipulation/directmanipulation.spec b/dlls/directmanipulation/directmanipulation.spec index 6c8a107d5c..3f0004daeb 100644 --- a/dlls/directmanipulation/directmanipulation.spec +++ b/dlls/directmanipulation/directmanipulation.spec @@ -2,5 +2,5 @@ @ stdcall -private DllCanUnloadNow() @ stub DllGetActivationFactory @ stdcall -private DllGetClassObject(ptr ptr ptr) -@ stub DllRegisterServer() -@ stub DllUnregisterServer() +@ stdcall -private DllRegisterServer() +@ stdcall -private DllUnregisterServer()