shfolder.h (6.00.3790.1830-Windows 5.0) | | shfolder.h (6.0.6001.18000-Windows 6.0) |
// functions to get shell special folders/ | | // functions to get shell special folders/ |
// shfolder.dll supports these on all platforms including Win95, Win98, NT4 and
IE4 shell | | // shfolder.dll supports these on all platforms including Win95, Win98, NT4 and
IE4 shell |
| | |
// all CSIDL values referred to here are supported natively by shfolder.dll, tha
t is they | | // all CSIDL values referred to here are supported natively by shfolder.dll, tha
t is they |
// will work on all platforms. | | // will work on all platforms. |
| | |
|
| | #pragma once |
| | |
#ifndef _SHFOLDER_H_ | | #ifndef _SHFOLDER_H_ |
#define _SHFOLDER_H_ | | #define _SHFOLDER_H_ |
| | |
|
| | #include <SpecStrings.h> |
| | |
#ifndef SHFOLDERAPI | | #ifndef SHFOLDERAPI |
#if defined(_SHFOLDER_) | | #if defined(_SHFOLDER_) |
#define SHFOLDERAPI STDAPI | | #define SHFOLDERAPI STDAPI |
#else | | #else |
#define SHFOLDERAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE | | #define SHFOLDERAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE |
#endif | | #endif |
#endif | | #endif |
| | |
#ifndef CSIDL_PERSONAL | | #ifndef CSIDL_PERSONAL |
#define CSIDL_PERSONAL 0x0005 // My Documents | | #define CSIDL_PERSONAL 0x0005 // My Documents |
#endif | | #endif |
| | |
#ifndef CSIDL_MYMUSIC | | #ifndef CSIDL_MYMUSIC |
#define CSIDL_MYMUSIC 0x000d // "My Music" folder | | #define CSIDL_MYMUSIC 0x000d // "My Music" folder |
#endif | | #endif |
| | |
#ifndef CSIDL_APPDATA | | #ifndef CSIDL_APPDATA |
|
#define CSIDL_APPDATA 0x001A // Application Data, new for
NT4 | | #define CSIDL_APPDATA 0x001a // Application Data, new for
NT4 |
#endif | | #endif |
| | |
#ifndef CSIDL_LOCAL_APPDATA | | #ifndef CSIDL_LOCAL_APPDATA |
| | |
|
#define CSIDL_LOCAL_APPDATA 0x001C // non roaming, user\Local S
ettings\Application Data | | #define CSIDL_LOCAL_APPDATA 0x001c // non roaming, user\Local S
ettings\Application Data |
#define CSIDL_INTERNET_CACHE 0x0020 | | #define CSIDL_INTERNET_CACHE 0x0020 |
#define CSIDL_COOKIES 0x0021 | | #define CSIDL_COOKIES 0x0021 |
#define CSIDL_HISTORY 0x0022 | | #define CSIDL_HISTORY 0x0022 |
#define CSIDL_COMMON_APPDATA 0x0023 // All Users\Application Dat
a | | #define CSIDL_COMMON_APPDATA 0x0023 // All Users\Application Dat
a |
#define CSIDL_WINDOWS 0x0024 // GetWindowsDirectory() | | #define CSIDL_WINDOWS 0x0024 // GetWindowsDirectory() |
#define CSIDL_SYSTEM 0x0025 // GetSystemDirectory() | | #define CSIDL_SYSTEM 0x0025 // GetSystemDirectory() |
#define CSIDL_PROGRAM_FILES 0x0026 // C:\Program Files | | #define CSIDL_PROGRAM_FILES 0x0026 // C:\Program Files |
#define CSIDL_MYPICTURES 0x0027 // My Pictures, new for Win2
K | | #define CSIDL_MYPICTURES 0x0027 // My Pictures, new for Win2
K |
#define CSIDL_PROGRAM_FILES_COMMON 0x002b // C:\Program Files\Common | | #define CSIDL_PROGRAM_FILES_COMMON 0x002b // C:\Program Files\Common |
#define CSIDL_COMMON_DOCUMENTS 0x002e // All Users\Documents | | #define CSIDL_COMMON_DOCUMENTS 0x002e // All Users\Documents |
#define CSIDL_RESOURCES 0x0038 // %windir%\Resources\, For
theme and other windows resources. | | #define CSIDL_RESOURCES 0x0038 // %windir%\Resources\, For
theme and other windows resources. |
#define CSIDL_RESOURCES_LOCALIZED 0x0039 // %windir%\Resources\<LangI
D>, for theme and other windows specific resources. | | #define CSIDL_RESOURCES_LOCALIZED 0x0039 // %windir%\Resources\<LangI
D>, for theme and other windows specific resources. |
| | |
#define CSIDL_FLAG_CREATE 0x8000 // new for Win2K, or this in
to force creation of folder | | #define CSIDL_FLAG_CREATE 0x8000 // new for Win2K, or this in
to force creation of folder |
| | |
#define CSIDL_COMMON_ADMINTOOLS 0x002f // All Users\Start Menu\Prog
rams\Administrative Tools | | #define CSIDL_COMMON_ADMINTOOLS 0x002f // All Users\Start Menu\Prog
rams\Administrative Tools |
#define CSIDL_ADMINTOOLS 0x0030 // <user name>\Start Menu\Pr
ograms\Administrative Tools | | #define CSIDL_ADMINTOOLS 0x0030 // <user name>\Start Menu\Pr
ograms\Administrative Tools |
| | |
#endif // CSIDL_LOCAL_APPDATA | | #endif // CSIDL_LOCAL_APPDATA |
| | |
|
SHFOLDERAPI SHGetFolderPathA(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, | | SHFOLDERAPI SHGetFolderPathA(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, |
LPSTR pszPath); | | __out_ecount(MAX_PATH) LPSTR pszPath); |
SHFOLDERAPI SHGetFolderPathW(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, | | SHFOLDERAPI SHGetFolderPathW(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, |
LPWSTR pszPath); | | __out_ecount(MAX_PATH) LPWSTR pszPath); |
| | |
// protos so callers can GetProcAddress() from shfolder.dll | | // protos so callers can GetProcAddress() from shfolder.dll |
| | |
typedef HRESULT (__stdcall * PFNSHGETFOLDERPATHA)(HWND, int, HANDLE, DWORD, LPST
R); // "SHGetFolderPathA" | | typedef HRESULT (__stdcall * PFNSHGETFOLDERPATHA)(HWND, int, HANDLE, DWORD, LPST
R); // "SHGetFolderPathA" |
typedef HRESULT (__stdcall * PFNSHGETFOLDERPATHW)(HWND, int, HANDLE, DWORD, LPWS
TR); // "SHGetFolderPathW" | | typedef HRESULT (__stdcall * PFNSHGETFOLDERPATHW)(HWND, int, HANDLE, DWORD, LPWS
TR); // "SHGetFolderPathW" |
| | |
#ifdef UNICODE | | #ifdef UNICODE |
#define SHGetFolderPath SHGetFolderPathW | | #define SHGetFolderPath SHGetFolderPathW |
#define PFNSHGETFOLDERPATH PFNSHGETFOLDERPATHW | | #define PFNSHGETFOLDERPATH PFNSHGETFOLDERPATHW |
#else | | #else |
| | |
End of changes. 5 change blocks. |
6 lines changed or deleted | | 10 lines changed or added |
|