Nikolay Sivov : shlwapi: Implement SKGetValueW over SHGetShellKey.
Alexandre Julliard
julliard at winehq.org
Thu Jul 29 12:08:40 CDT 2010
Module: wine
Branch: master
Commit: 31da90fd9d4437f76271066c8cd0ddbf055997e8
URL: http://source.winehq.org/git/wine.git/?a=commit;h=31da90fd9d4437f76271066c8cd0ddbf055997e8
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Thu Jul 29 10:03:29 2010 +0400
shlwapi: Implement SKGetValueW over SHGetShellKey.
---
dlls/shlwapi/ordinal.c | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/dlls/shlwapi/ordinal.c b/dlls/shlwapi/ordinal.c
index 3e47af6..3edb116 100644
--- a/dlls/shlwapi/ordinal.c
+++ b/dlls/shlwapi/ordinal.c
@@ -4505,12 +4505,22 @@ HRESULT WINAPI IUnknown_OnFocusChangeIS(LPUNKNOWN lpUnknown, LPUNKNOWN pFocusObj
}
/***********************************************************************
- * SHGetValueW (SHLWAPI.@)
+ * SKGetValueW (SHLWAPI.516)
*/
-HRESULT WINAPI SKGetValueW(DWORD a, LPWSTR b, LPWSTR c, DWORD d, DWORD e, DWORD f)
+HRESULT WINAPI SKGetValueW(DWORD flags, LPCWSTR subkey, LPCWSTR value, DWORD *type,
+ void *data, DWORD *count)
{
- FIXME("(%x, %s, %s, %x, %x, %x): stub\n", a, debugstr_w(b), debugstr_w(c), d, e, f);
- return E_FAIL;
+ DWORD ret;
+ HKEY hkey;
+
+ TRACE("(0x%x, %s, %s, %p, %p, %p)\n", flags, debugstr_w(subkey),
+ debugstr_w(value), type, data, count);
+
+ hkey = SHGetShellKey(flags, subkey, FALSE);
+ ret = SHQueryValueExW(hkey, value, NULL, type, data, count);
+ RegCloseKey(hkey);
+
+ return HRESULT_FROM_WIN32(ret);
}
typedef HRESULT (WINAPI *DllGetVersion_func)(DLLVERSIONINFO *);
More information about the wine-cvs
mailing list