Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _SHFOLDER_H_
      7 #define _SHFOLDER_H_
      8 
      9 #include <_mingw_unicode.h>
     10 
     11 #ifndef SHFOLDERAPI
     12 #if defined(_SHFOLDER_)
     13 #define SHFOLDERAPI STDAPI
     14 #else
     15 #define SHFOLDERAPI EXTERN_C DECLSPEC_IMPORT HRESULT WINAPI
     16 #endif
     17 #endif
     18 
     19 #ifndef CSIDL_PERSONAL
     20 #define CSIDL_PERSONAL 0x0005
     21 #endif
     22 
     23 #ifndef CSIDL_MYMUSIC
     24 #define CSIDL_MYMUSIC 0x000d
     25 #endif
     26 
     27 #ifndef CSIDL_APPDATA
     28 #define CSIDL_APPDATA 0x001A
     29 #endif
     30 
     31 #ifndef CSIDL_LOCAL_APPDATA
     32 
     33 #define CSIDL_LOCAL_APPDATA 0x001C
     34 #define CSIDL_INTERNET_CACHE 0x0020
     35 #define CSIDL_COOKIES 0x0021
     36 #define CSIDL_HISTORY 0x0022
     37 #define CSIDL_COMMON_APPDATA 0x0023
     38 #define CSIDL_WINDOWS 0x0024
     39 #define CSIDL_SYSTEM 0x0025
     40 #define CSIDL_PROGRAM_FILES 0x0026
     41 #define CSIDL_MYPICTURES 0x0027
     42 #define CSIDL_PROGRAM_FILES_COMMON 0x002b
     43 #define CSIDL_COMMON_DOCUMENTS 0x002e
     44 #define CSIDL_RESOURCES 0x0038
     45 #define CSIDL_RESOURCES_LOCALIZED 0x0039
     46 
     47 #define CSIDL_FLAG_CREATE 0x8000
     48 
     49 #define CSIDL_COMMON_ADMINTOOLS 0x002f
     50 #define CSIDL_ADMINTOOLS 0x0030
     51 #endif
     52 
     53 #define SHGetFolderPath __MINGW_NAME_AW(SHGetFolderPath)
     54 #define PFNSHGETFOLDERPATH __MINGW_NAME_AW(PFNSHGETFOLDERPATH)
     55 
     56 SHFOLDERAPI SHGetFolderPathA(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPSTR pszPath);
     57 SHFOLDERAPI SHGetFolderPathW(HWND hwnd,int csidl,HANDLE hToken,DWORD dwFlags,LPWSTR pszPath);
     58 
     59 typedef HRESULT (__stdcall *PFNSHGETFOLDERPATHA)(HWND,int,HANDLE,DWORD,LPSTR);
     60 typedef HRESULT (__stdcall *PFNSHGETFOLDERPATHW)(HWND,int,HANDLE,DWORD,LPWSTR);
     61 
     62 #endif
     63