diff --git a/configure b/configure index ad2ef2e7b8d..305f71e18d8 100755 --- a/configure +++ b/configure @@ -1556,6 +1556,7 @@ enable_conhost enable_control enable_cscript enable_dism +enable_dllhost enable_dplaysvr enable_dpnsvr enable_dpvsetup @@ -21984,6 +21985,7 @@ wine_fn_config_makefile programs/conhost/tests enable_tests wine_fn_config_makefile programs/control enable_control wine_fn_config_makefile programs/cscript enable_cscript wine_fn_config_makefile programs/dism enable_dism +wine_fn_config_makefile programs/dllhost enable_dllhost wine_fn_config_makefile programs/dplaysvr enable_dplaysvr wine_fn_config_makefile programs/dpnsvr enable_dpnsvr wine_fn_config_makefile programs/dpvsetup enable_dpvsetup diff --git a/configure.ac b/configure.ac index 4245f7efb0f..5a85fce12a4 100644 --- a/configure.ac +++ b/configure.ac @@ -3251,6 +3251,7 @@ WINE_CONFIG_MAKEFILE(programs/conhost/tests) WINE_CONFIG_MAKEFILE(programs/control) WINE_CONFIG_MAKEFILE(programs/cscript) WINE_CONFIG_MAKEFILE(programs/dism) +WINE_CONFIG_MAKEFILE(programs/dllhost) WINE_CONFIG_MAKEFILE(programs/dplaysvr) WINE_CONFIG_MAKEFILE(programs/dpnsvr) WINE_CONFIG_MAKEFILE(programs/dpvsetup) diff --git a/programs/dllhost/Makefile.in b/programs/dllhost/Makefile.in new file mode 100644 index 00000000000..a92add9c2f0 --- /dev/null +++ b/programs/dllhost/Makefile.in @@ -0,0 +1,7 @@ +MODULE = dllhost.exe +IMPORTS = ole32 + +EXTRADLLFLAGS = -mwindows -municode + +C_SRCS = \ + dllhost.c diff --git a/programs/dllhost/dllhost.c b/programs/dllhost/dllhost.c new file mode 100644 index 00000000000..39d2194db4b --- /dev/null +++ b/programs/dllhost/dllhost.c @@ -0,0 +1,50 @@ +/* + * Copyright 2022 Dmitry Timoshkov + * + * 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 +#include +#include + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dllhost); + +int WINAPI wWinMain(HINSTANCE hinst, HINSTANCE previnst, LPWSTR cmdline, int showcmd) +{ + HRESULT hr; + CLSID clsid; + + if (wcsnicmp(cmdline, L"/PROCESSID:", 11)) + return 0; + + cmdline += 11; + + CoInitializeEx(NULL, COINIT_MULTITHREADED); + + hr = CLSIDFromString(cmdline, &clsid); + if (hr == S_OK) + { + FIXME("hosting object %s is not implemented\n", wine_dbgstr_guid(&clsid)); + } + + CoUninitialize(); + + return 0; +}