Nikolay Sivov : shell32: Implement SHGetPropertyStoreFromParsingName() as a wrapper over IShellItem2.
Module: wine Branch: master Commit: f2499d20d4eb6dcce8984d5ef887648112f4f1f5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f2499d20d4eb6dcce8984d5ef8... Author: Nikolay Sivov <nsivov(a)codeweavers.com> Date: Mon Feb 27 17:19:23 2017 +0300 shell32: Implement SHGetPropertyStoreFromParsingName() as a wrapper over IShellItem2. Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/shell32/shell32_main.c | 9 --------- dlls/shell32/shellitem.c | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/dlls/shell32/shell32_main.c b/dlls/shell32/shell32_main.c index 7e1c7d5..1a22150 100644 --- a/dlls/shell32/shell32_main.c +++ b/dlls/shell32/shell32_main.c @@ -964,15 +964,6 @@ HRESULT WINAPI SHGetPropertyStoreForWindow(HWND hwnd, REFIID riid, void **ppv) return E_NOTIMPL; } -/************************************************************************* - * SHGetPropertyStoreFromParsingName [SHELL32.@] - */ -HRESULT WINAPI SHGetPropertyStoreFromParsingName(PCWSTR pszPath, IBindCtx *pbc, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) -{ - FIXME("(%s %p %u %p %p) stub!\n", debugstr_w(pszPath), pbc, flags, riid, ppv); - return E_NOTIMPL; -} - /*************************************************************************/ typedef struct diff --git a/dlls/shell32/shellitem.c b/dlls/shell32/shellitem.c index 57f5fa6..1e19f7c 100644 --- a/dlls/shell32/shellitem.c +++ b/dlls/shell32/shellitem.c @@ -1331,6 +1331,24 @@ HRESULT WINAPI SHCreateShellItemArrayFromIDLists(UINT cidl, return ret; } +HRESULT WINAPI SHGetPropertyStoreFromParsingName(const WCHAR *path, IBindCtx *pbc, GETPROPERTYSTOREFLAGS flags, + REFIID riid, void **ppv) +{ + IShellItem2 *item; + HRESULT hr; + + TRACE("(%s %p %#x %p %p)\n", debugstr_w(path), pbc, flags, riid, ppv); + + hr = SHCreateItemFromParsingName(path, pbc, &IID_IShellItem2, (void **)&item); + if(SUCCEEDED(hr)) + { + hr = IShellItem2_GetPropertyStore(item, flags, riid, ppv); + IShellItem2_Release(item); + } + + return hr; +} + static HRESULT WINAPI CustomDestinationList_QueryInterface(ICustomDestinationList *iface, REFIID riid, void **obj) { CustomDestinationList *This = impl_from_ICustomDestinationList(iface);
participants (1)
-
Alexandre Julliard