From 7b767b698dfc72e64dde38bdde9b7de12ebac800 Mon Sep 17 00:00:00 2001 From: Louis Lenders Date: Fri, 27 Aug 2010 22:56:24 +0200 Subject: shell32: add stubbed SHGetKnownFolderPath --- dlls/shell32/shell32.spec | 1 + dlls/shell32/shellpath.c | 10 ++++++++++ include/shlobj.h | 1 + include/shtypes.idl | 5 +++++ 4 files changed, 17 insertions(+), 0 deletions(-) diff --git a/dlls/shell32/shell32.spec b/dlls/shell32/shell32.spec index da8944a..c13c90a 100644 --- a/dlls/shell32/shell32.spec +++ b/dlls/shell32/shell32.spec @@ -366,6 +366,7 @@ @ stdcall SHGetInstanceExplorer(long) @ stdcall SHGetItemFromDataObject(ptr long ptr ptr) @ stdcall SHGetItemFromObject(ptr ptr ptr) +@ stdcall SHGetKnownFolderPath(ptr long ptr ptr) @ stdcall SHGetLocalizedName(wstr ptr long ptr) @ stdcall SHGetMalloc(ptr) @ stdcall SHGetNameFromIDList(ptr long ptr) diff --git a/dlls/shell32/shellpath.c b/dlls/shell32/shellpath.c index 451d6ff..4d910eb 100644 --- a/dlls/shell32/shellpath.c +++ b/dlls/shell32/shellpath.c @@ -40,6 +40,7 @@ #include "winuser.h" #include "shlobj.h" +#include "shtypes.h" #include "shresdef.h" #include "shell32_main.h" #include "undocshell.h" @@ -2502,3 +2503,12 @@ HRESULT WINAPI SHGetSpecialFolderLocation( hr = SHGetFolderLocation(hwndOwner, nFolder, NULL, 0, ppidl); return hr; } + +/************************************************************************* + * SHGetKnownFolderPath [SHELL32.@] + */ +HRESULT WINAPI SHGetKnownFolderPath(REFKNOWNFOLDERID rfid, DWORD flags, HANDLE token, PWSTR *path) +{ + FIXME("(%s, %d, %p, %p) stub!\n", debugstr_guid(rfid), flags, token, *path); + return E_NOTIMPL; +} diff --git a/include/shlobj.h b/include/shlobj.h index 0aef3cf..cda1306 100644 --- a/include/shlobj.h +++ b/include/shlobj.h @@ -62,6 +62,7 @@ HRESULT WINAPI SHGetInstanceExplorer(IUnknown**); HRESULT WINAPI SHGetFolderPathAndSubDirA(HWND,int,HANDLE,DWORD,LPCSTR,LPSTR); HRESULT WINAPI SHGetFolderPathAndSubDirW(HWND,int,HANDLE,DWORD,LPCWSTR,LPWSTR); #define SHGetFolderPathAndSubDir WINELIB_NAME_AW(SHGetFolderPathAndSubDir); +HRESULT WINAPI SHGetKnownFolderPath(REFKNOWNFOLDERID,DWORD,HANDLE,PWSTR*); BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST,LPSTR); BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST,LPWSTR); #define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList) diff --git a/include/shtypes.idl b/include/shtypes.idl index dd0c5f6..e15830a 100644 --- a/include/shtypes.idl +++ b/include/shtypes.idl @@ -111,3 +111,8 @@ typedef [v1_enum] enum tagSHCOLSTATE } SHCOLSTATE; typedef DWORD SHCOLSTATEF; + +typedef GUID KNOWNFOLDERID; + +typedef KNOWNFOLDERID *REFKNOWNFOLDERID; + -- 1.7.0.4