Module: wine Branch: master Commit: 31da90fd9d4437f76271066c8cd0ddbf055997e8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=31da90fd9d4437f76271066c8c...
Author: Nikolay Sivov nsivov@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 *);