[PATCH 4/4] shlwapi: Forward SHGetValue() to shcore.dll.
Nikolay Sivov
nsivov at codeweavers.com
Mon May 11 10:23:46 CDT 2020
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/shlwapi/reg.c | 66 ---------------------------------------
dlls/shlwapi/shlwapi.spec | 4 +--
2 files changed, 2 insertions(+), 68 deletions(-)
diff --git a/dlls/shlwapi/reg.c b/dlls/shlwapi/reg.c
index 08cc26ee48..f33047ab38 100644
--- a/dlls/shlwapi/reg.c
+++ b/dlls/shlwapi/reg.c
@@ -47,72 +47,6 @@ static const WCHAR szExtensionW[] = { 'E', 'x', 't','e','n','s','i','o','n','\0'
INT WINAPI SHStringFromGUIDW(REFGUID,LPWSTR,INT);
HRESULT WINAPI SHRegGetCLSIDKeyW(REFGUID,LPCWSTR,BOOL,BOOL,PHKEY);
-/*************************************************************************
- * SHGetValueA [SHLWAPI.@]
- *
- * Get a value from the registry.
- *
- * PARAMS
- * hKey [I] Handle to registry key
- * lpszSubKey [I] Name of sub key containing value to get
- * lpszValue [I] Name of value to get
- * pwType [O] Pointer to the values type
- * pvData [O] Pointer to the values data
- * pcbData [O] Pointer to the values size
- *
- * RETURNS
- * Success: ERROR_SUCCESS. Output parameters contain the details read.
- * Failure: An error code from RegOpenKeyExA() or SHQueryValueExA().
- */
-DWORD WINAPI SHGetValueA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue,
- LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
-{
- DWORD dwRet = 0;
- HKEY hSubKey = 0;
-
- TRACE("(hkey=%p,%s,%s,%p,%p,%p)\n", hKey, debugstr_a(lpszSubKey),
- debugstr_a(lpszValue), pwType, pvData, pcbData);
-
- /* lpszSubKey can be 0. In this case the value is taken from the
- * current key.
- */
- if(lpszSubKey)
- dwRet = RegOpenKeyExA(hKey, lpszSubKey, 0, KEY_QUERY_VALUE, &hSubKey);
-
- if (! dwRet)
- {
- /* SHQueryValueEx expands Environment strings */
- dwRet = SHQueryValueExA(hSubKey ? hSubKey : hKey, lpszValue, 0, pwType, pvData, pcbData);
- if (hSubKey) RegCloseKey(hSubKey);
- }
- return dwRet;
-}
-
-/*************************************************************************
- * SHGetValueW [SHLWAPI.@]
- *
- * See SHGetValueA.
- */
-DWORD WINAPI SHGetValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue,
- LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
-{
- DWORD dwRet = 0;
- HKEY hSubKey = 0;
-
- TRACE("(hkey=%p,%s,%s,%p,%p,%p)\n", hKey, debugstr_w(lpszSubKey),
- debugstr_w(lpszValue), pwType, pvData, pcbData);
-
- if(lpszSubKey)
- dwRet = RegOpenKeyExW(hKey, lpszSubKey, 0, KEY_QUERY_VALUE, &hSubKey);
-
- if (! dwRet)
- {
- dwRet = SHQueryValueExW(hSubKey ? hSubKey : hKey, lpszValue, 0, pwType, pvData, pcbData);
- if (hSubKey) RegCloseKey(hSubKey);
- }
- return dwRet;
-}
-
/*************************************************************************
* SHSetValueA [SHLWAPI.@]
*
diff --git a/dlls/shlwapi/shlwapi.spec b/dlls/shlwapi/shlwapi.spec
index 98b745c416..ebe3058281 100644
--- a/dlls/shlwapi/shlwapi.spec
+++ b/dlls/shlwapi/shlwapi.spec
@@ -702,8 +702,8 @@
@ stdcall SHEnumValueW(long long wstr ptr ptr ptr ptr) shcore.SHEnumValueW
@ stdcall SHGetInverseCMAP ( ptr long )
@ stdcall SHGetThreadRef(ptr) shcore.SHGetThreadRef
-@ stdcall SHGetValueA ( long str str ptr ptr ptr )
-@ stdcall SHGetValueW ( long wstr wstr ptr ptr ptr )
+@ stdcall -import SHGetValueA (long str str ptr ptr ptr)
+@ stdcall -import SHGetValueW (long wstr wstr ptr ptr ptr)
@ stdcall SHIsLowMemoryMachine(long)
@ stdcall SHOpenRegStream2A(long str str long) shcore.SHOpenRegStream2A
@ stdcall SHOpenRegStream2W(long wstr wstr long) shcore.SHOpenRegStream2W
--
2.26.2
More information about the wine-devel
mailing list