From b3282a34405c340a69add02698dfcee1a73001ef Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Sun, 8 Jun 2014 17:11:47 +0000 Subject: [PATCH] [RPCRT4] * Do not rely on RegDeleteTreeW which shouldn't be exported. CORE-8174 svn path=/trunk/; revision=63558 --- reactos/dll/win32/rpcrt4/CMakeLists.txt | 2 +- reactos/dll/win32/rpcrt4/cpsf.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/reactos/dll/win32/rpcrt4/CMakeLists.txt b/reactos/dll/win32/rpcrt4/CMakeLists.txt index fa024a5ee24..85207ed0121 100644 --- a/reactos/dll/win32/rpcrt4/CMakeLists.txt +++ b/reactos/dll/win32/rpcrt4/CMakeLists.txt @@ -52,6 +52,6 @@ set_module_type(rpcrt4 win32dll) target_link_libraries(rpcrt4 wine uuid ${PSEH_LIB}) add_delay_importlibs(rpcrt4 iphlpapi wininet secur32 user32) -add_importlibs(rpcrt4 msvcrt advapi32 ws2_32 kernel32 ntdll) +add_importlibs(rpcrt4 advapi32 ws2_32 shlwapi msvcrt kernel32 ntdll) add_pch(rpcrt4 precomp.h SOURCE) add_cd_file(TARGET rpcrt4 DESTINATION reactos/system32 FOR all) diff --git a/reactos/dll/win32/rpcrt4/cpsf.c b/reactos/dll/win32/rpcrt4/cpsf.c index 72029a66889..888b057c73d 100644 --- a/reactos/dll/win32/rpcrt4/cpsf.c +++ b/reactos/dll/win32/rpcrt4/cpsf.c @@ -22,6 +22,12 @@ #include +#define NO_SHLWAPI_PATH +#define NO_SHLWAPI_STRFCNS +#define NO_SHLWAPI_GDI +#define NO_SHLWAPI_STREAM +#include + WINE_DEFAULT_DEBUG_CHANNEL(ole); static void format_clsid( WCHAR *buffer, const CLSID *clsid ) @@ -308,7 +314,7 @@ HRESULT WINAPI NdrDllUnregisterProxy(HMODULE hDll, strcpyW( keyname, interfaceW ); format_clsid( keyname + strlenW(keyname), proxy->header.piid ); - RegDeleteTreeW(HKEY_CLASSES_ROOT, keyname); + SHDeleteKeyW(HKEY_CLASSES_ROOT, keyname); } pProxyFileList++; } @@ -316,7 +322,7 @@ HRESULT WINAPI NdrDllUnregisterProxy(HMODULE hDll, /* unregister clsid */ strcpyW( keyname, clsidW ); strcatW( keyname, clsid ); - RegDeleteTreeW(HKEY_CLASSES_ROOT, keyname); + SHDeleteKeyW(HKEY_CLASSES_ROOT, keyname); return S_OK; }