diff --git a/configure b/configure index c7c7e40d635..6b7f7d881d0 100755 --- a/configure +++ b/configure @@ -1101,6 +1101,7 @@ enable_bthprops_cpl enable_cabinet enable_capi2032 enable_cards +enable_cdosys enable_cfgmgr32 enable_clusapi enable_combase @@ -18541,6 +18542,7 @@ wine_fn_config_dll cabinet enable_cabinet implib wine_fn_config_test dlls/cabinet/tests cabinet_test wine_fn_config_dll capi2032 enable_capi2032 implib wine_fn_config_dll cards enable_cards implib +wine_fn_config_dll cdosys enable_cdosys wine_fn_config_dll cfgmgr32 enable_cfgmgr32 implib wine_fn_config_dll clusapi enable_clusapi implib wine_fn_config_dll combase enable_combase diff --git a/configure.ac b/configure.ac index 23f297b469f..016b9bf0bd2 100644 --- a/configure.ac +++ b/configure.ac @@ -3023,6 +3023,7 @@ WINE_CONFIG_DLL(cabinet,,[implib]) WINE_CONFIG_TEST(dlls/cabinet/tests) WINE_CONFIG_DLL(capi2032,,[implib]) WINE_CONFIG_DLL(cards,,[implib]) +WINE_CONFIG_DLL(cdosys) WINE_CONFIG_DLL(cfgmgr32,,[implib]) WINE_CONFIG_DLL(clusapi,,[implib]) WINE_CONFIG_DLL(combase) diff --git a/dlls/cdosys/Makefile.in b/dlls/cdosys/Makefile.in new file mode 100644 index 00000000000..d1ce780b790 --- /dev/null +++ b/dlls/cdosys/Makefile.in @@ -0,0 +1,5 @@ +MODULE = cdosys.dll +IMPORTS = uuid ole32 + +C_SRCS = \ + main.c diff --git a/dlls/cdosys/cdosys.spec b/dlls/cdosys/cdosys.spec new file mode 100644 index 00000000000..b16365d0c9f --- /dev/null +++ b/dlls/cdosys/cdosys.spec @@ -0,0 +1,4 @@ +@ stdcall -private DllCanUnloadNow() +@ stdcall -private DllGetClassObject(ptr ptr ptr) +@ stdcall -private DllRegisterServer() +@ stdcall -private DllUnregisterServer() diff --git a/dlls/cdosys/main.c b/dlls/cdosys/main.c new file mode 100644 index 00000000000..1a9affe249e --- /dev/null +++ b/dlls/cdosys/main.c @@ -0,0 +1,72 @@ +/* + * Copyright 2018 Andrey Gusev + * + * 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 + */ + +#include +#include + +#define COBJMACROS + +#include "windef.h" +#include "winbase.h" +#include "winuser.h" +#include "winreg.h" + +#include "ole2.h" +#include "rpcproxy.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(cdosys); + +static HINSTANCE instance; + +BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD reason, LPVOID lpv) +{ + TRACE("(%p, %d, %p)\n", hInstDLL, reason, lpv); + + switch (reason) + { + case DLL_PROCESS_ATTACH: + instance = hInstDLL; + DisableThreadLibraryCalls(hInstDLL); + break; + } + return TRUE; +} + +HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **obj) +{ + FIXME("(%s, %s, %p) stub!\n", debugstr_guid(rclsid), debugstr_guid(riid), obj); + + return CLASS_E_CLASSNOTAVAILABLE; +} + +HRESULT WINAPI DllCanUnloadNow(void) +{ + return S_FALSE; +} + +HRESULT WINAPI DllRegisterServer(void) +{ + return __wine_register_resources( instance ); +} + +HRESULT WINAPI DllUnregisterServer(void) +{ + return __wine_unregister_resources( instance ); +}