home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / shlwapi.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  31KB  |  713 lines

  1. #ifndef _SHLWAPI_H
  2. #define _SHLWAPI_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10.  
  11. #ifndef __OBJC__
  12. #include <objbase.h>
  13. #include <shlobj.h>
  14. #endif
  15.  
  16. #ifndef WINSHLWAPI
  17. #define WINSHLWAPI DECLSPEC_IMPORT
  18. #endif
  19.  
  20. #define DLLVER_PLATFORM_WINDOWS    0x00000001
  21. #define DLLVER_PLATFORM_NT    0x00000002
  22.  
  23. #define URL_DONT_ESCAPE_EXTRA_INFO 0x02000000
  24. #define URL_DONT_SIMPLIFY    0x08000000
  25. #define URL_ESCAPE_PERCENT    0x00001000
  26. #define URL_ESCAPE_SEGMENT_ONLY    0x00002000
  27. #define URL_ESCAPE_SPACES_ONLY    0x04000000
  28. #define URL_ESCAPE_UNSAFE    0x20000000
  29. #define URL_INTERNAL_PATH    0x00800000
  30. #define URL_PARTFLAG_KEEPSCHEME    0x00000001
  31. #define URL_PLUGGABLE_PROTOCOL    0x40000000
  32. #define URL_UNESCAPE        0x10000000
  33. #define URL_UNESCAPE_HIGH_ANSI_ONLY 0x00400000
  34. #define URL_UNESCAPE_INPLACE    0x00100000
  35.  
  36. #ifndef RC_INVOKED
  37. #include <pshpack1.h>
  38. typedef struct _DllVersionInfo
  39. {
  40.     DWORD cbSize;
  41.     DWORD dwMajorVersion;
  42.     DWORD dwMinorVersion;
  43.     DWORD dwBuildNumber;
  44.     DWORD dwPlatformID;
  45. } DLLVERSIONINFO;
  46. typedef struct _DLLVERSIONINFO2
  47. {
  48.     DLLVERSIONINFO info1;
  49.     DWORD dwFlags;
  50.     ULONGLONG ullVersion;
  51. } DLLVERSIONINFO2;
  52. #include <poppack.h>
  53.  
  54. #define MAKEDLLVERULL(major, minor, build, qfe) \
  55.         (((ULONGLONG)(major) << 48) | \
  56.          ((ULONGLONG)(minor) << 32) | \
  57.          ((ULONGLONG)(build) << 16) | \
  58.          ((ULONGLONG)(  qfe) <<  0))
  59.  
  60. typedef enum {
  61.     ASSOCSTR_COMMAND,
  62.     ASSOCSTR_EXECUTABLE,
  63.     ASSOCSTR_FRIENDLYDOCNAME,
  64.     ASSOCSTR_FRIENDLYAPPNAME,
  65.     ASSOCSTR_NOOPEN,
  66.     ASSOCSTR_SHELLNEWVALUE,
  67.     ASSOCSTR_DDECOMMAND,
  68.     ASSOCSTR_DDEIFEXEC,
  69.     ASSOCSTR_DDEAPPLICATION,
  70.     ASSOCSTR_DDETOPIC
  71. } ASSOCSTR;
  72. typedef enum
  73. {
  74.     ASSOCKEY_SHELLEXECCLASS = 1,
  75.     ASSOCKEY_APP,
  76.     ASSOCKEY_CLASS,
  77.     ASSOCKEY_BASECLASS
  78. } ASSOCKEY;
  79. typedef enum
  80. {
  81.     ASSOCDATA_MSIDESCRIPTOR = 1,
  82.     ASSOCDATA_NOACTIVATEHANDLER,
  83.     ASSOCDATA_QUERYCLASSSTORE
  84. } ASSOCDATA;
  85. typedef DWORD ASSOCF;
  86. typedef enum
  87. {
  88.     SHREGDEL_DEFAULT = 0x00000000,
  89.     SHREGDEL_HKCU    = 0x00000001,
  90.     SHREGDEL_HKLM    = 0x00000010,
  91.     SHREGDEL_BOTH    = 0x00000011
  92. } SHREGDEL_FLAGS;
  93. typedef enum
  94. {
  95.     SHREGENUM_DEFAULT = 0x00000000,
  96.     SHREGENUM_HKCU    = 0x00000001,
  97.     SHREGENUM_HKLM    = 0x00000010,
  98.     SHREGENUM_BOTH    = 0x00000011
  99. } SHREGENUM_FLAGS;
  100. typedef enum
  101. {
  102.     URLIS_URL,
  103.     URLIS_OPAQUE,
  104.     URLIS_NOHISTORY,
  105.     URLIS_FILEURL,
  106.     URLIS_APPLIABLE,
  107.     URLIS_DIRECTORY,
  108.     URLIS_HASQUERY
  109. } URLIS;
  110.  
  111. typedef HANDLE HUSKEY, *PHUSKEY;
  112.  
  113. typedef HRESULT (WINAPI* DLLGETVERSIONPROC)(DLLVERSIONINFO *);
  114.  
  115. WINSHLWAPI BOOL WINAPI ChrCmpIA(WORD,WORD);
  116. WINSHLWAPI BOOL WINAPI ChrCmpIW(WCHAR,WCHAR);
  117. #define IntlStrEqNA(pStr1, pStr2, nChar) IntlStrEqWorkerA(TRUE, pStr1, pStr2, nChar);
  118. #define IntlStrEqNW(pStr1, pStr2, nChar) IntlStrEqWorkerW(TRUE, pStr1, pStr2, nChar);
  119. #define IntlStrEqNIA(pStr1, pStr2, nChar) IntlStrEqWorkerA(FALSE, pStr1, pStr2, nChar);
  120. #define IntlStrEqNIW(pStr1, pStr2, nChar) IntlStrEqWorkerW(FALSE, pStr1, pStr2, nChar);
  121. WINSHLWAPI BOOL WINAPI IntlStrEqWorkerA(BOOL,LPCSTR,LPCSTR,int);
  122. WINSHLWAPI BOOL WINAPI IntlStrEqWorkerW(BOOL,LPCWSTR,LPCWSTR,int);
  123. WINSHLWAPI HRESULT WINAPI SHStrDupA(LPCSTR,LPWSTR*);
  124. WINSHLWAPI HRESULT WINAPI SHStrDupW(LPCWSTR,LPWSTR*);
  125. WINSHLWAPI LPSTR WINAPI StrCatA(LPSTR,LPCSTR);
  126. WINSHLWAPI LPWSTR WINAPI StrCatW(LPWSTR,LPCWSTR);
  127. WINSHLWAPI LPSTR WINAPI StrCatBuffA(LPSTR,LPCSTR,int);
  128. WINSHLWAPI LPWSTR WINAPI StrCatBuffW(LPWSTR,LPCWSTR,int);
  129. WINSHLWAPI DWORD WINAPI StrCatChainW(LPWSTR,DWORD,DWORD,LPCWSTR);
  130. WINSHLWAPI LPSTR WINAPI StrChrA(LPCSTR,WORD);
  131. WINSHLWAPI LPWSTR WINAPI StrChrW(LPCWSTR,WCHAR);
  132. WINSHLWAPI LPSTR WINAPI StrChrIA(LPCSTR,WORD);
  133. WINSHLWAPI LPWSTR WINAPI StrChrIW(LPCWSTR,WCHAR);
  134. #define StrCmpIA lstrcmpiA
  135. #define StrCmpA lstrcmpA
  136. #define StrCpyA lstrcpyA
  137. #define StrCpyNA lstrcpynA
  138. WINSHLWAPI int WINAPI StrCmpIW(LPCWSTR,LPCWSTR);
  139. WINSHLWAPI int WINAPI StrCmpW(LPCWSTR,LPCWSTR);
  140. WINSHLWAPI LPWSTR WINAPI StrCpyW(LPWSTR,LPCWSTR);
  141. WINSHLWAPI LPWSTR WINAPI StrCpyNW(LPWSTR,LPCWSTR,int);
  142. WINSHLWAPI int WINAPI StrCmpNA(LPCSTR,LPCSTR,int);
  143. WINSHLWAPI int WINAPI StrCmpNW(LPCWSTR,LPCWSTR,int);
  144. WINSHLWAPI int WINAPI StrCmpNIA(LPCSTR,LPCSTR,int);
  145. WINSHLWAPI int WINAPI StrCmpNIW(LPCWSTR,LPCWSTR,int);
  146. WINSHLWAPI int WINAPI StrCSpnA(LPCSTR,LPCSTR);
  147. WINSHLWAPI int WINAPI StrCSpnW(LPCWSTR,LPCWSTR);
  148. WINSHLWAPI int WINAPI StrCSpnIA(LPCSTR,LPCSTR);
  149. WINSHLWAPI int WINAPI StrCSpnIW(LPCWSTR,LPCWSTR);
  150. WINSHLWAPI LPSTR WINAPI StrDupA(LPCSTR);
  151. WINSHLWAPI LPWSTR WINAPI StrDupW(LPCWSTR);
  152. WINSHLWAPI LPSTR WINAPI StrFormatByteSize64A(LONGLONG,LPSTR,UINT);
  153. WINSHLWAPI LPSTR WINAPI StrFormatByteSizeA(DWORD,LPSTR,UINT);
  154. WINSHLWAPI LPWSTR WINAPI StrFormatByteSizeW(LONGLONG,LPWSTR,UINT);
  155. WINSHLWAPI LPSTR WINAPI StrFormatKBSizeA(LONGLONG,LPSTR,UINT);
  156. WINSHLWAPI LPWSTR WINAPI StrFormatKBSizeW(LONGLONG,LPWSTR,UINT);
  157. WINSHLWAPI int WINAPI StrFromTimeIntervalA(LPSTR,UINT,DWORD,int);
  158. WINSHLWAPI int WINAPI StrFromTimeIntervalW(LPWSTR,UINT,DWORD,int);
  159. WINSHLWAPI BOOL WINAPI StrIsIntlEqualA(BOOL,LPCSTR,LPCSTR,int);
  160. WINSHLWAPI BOOL WINAPI StrIsIntlEqualW(BOOL,LPCWSTR,LPCWSTR,int);
  161. WINSHLWAPI LPSTR WINAPI StrNCatA(LPSTR,LPCSTR,int);
  162. WINSHLWAPI LPWSTR WINAPI StrNCatW(LPWSTR,LPCWSTR,int);
  163. WINSHLWAPI LPSTR WINAPI StrPBrkA(LPCSTR,LPCSTR);
  164. WINSHLWAPI LPWSTR WINAPI StrPBrkW(LPCWSTR,LPCWSTR);
  165. WINSHLWAPI LPSTR WINAPI StrRChrA(LPCSTR,LPCSTR,WORD);
  166. WINSHLWAPI LPWSTR WINAPI StrRChrW(LPCWSTR,LPCWSTR,WCHAR);
  167. WINSHLWAPI LPSTR WINAPI StrRChrIA(LPCSTR,LPCSTR,WORD);
  168. WINSHLWAPI LPWSTR WINAPI StrRChrIW(LPCWSTR,LPCWSTR,WCHAR);
  169. #ifndef __OBJC__
  170. WINSHLWAPI HRESULT WINAPI StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT);
  171. WINSHLWAPI HRESULT WINAPI StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT);
  172. WINSHLWAPI HRESULT WINAPI StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*);
  173. WINSHLWAPI HRESULT WINAPI StrRetToStrW(LPSTRRET,LPCITEMIDLIST,LPWSTR*);
  174. #endif
  175. WINSHLWAPI LPSTR WINAPI StrRStrIA(LPCSTR,LPCSTR,LPCSTR);
  176. WINSHLWAPI LPWSTR WINAPI StrRStrIW(LPCWSTR,LPCWSTR,LPCWSTR);
  177. WINSHLWAPI int WINAPI StrSpnA(LPCSTR,LPCSTR);
  178. WINSHLWAPI int WINAPI StrSpnW(LPCWSTR,LPCWSTR);
  179. WINSHLWAPI LPSTR WINAPI StrStrA(LPCSTR, LPCSTR);
  180. WINSHLWAPI LPSTR WINAPI StrStrIA(LPCSTR,LPCSTR);
  181. WINSHLWAPI LPWSTR WINAPI StrStrIW(LPCWSTR,LPCWSTR);
  182. WINSHLWAPI LPWSTR WINAPI StrStrW(LPCWSTR,LPCWSTR);
  183. WINSHLWAPI int WINAPI StrToIntA(LPCSTR);
  184. WINSHLWAPI int WINAPI StrToIntW(LPCWSTR);
  185. WINSHLWAPI BOOL WINAPI StrToIntExA(LPCSTR,DWORD,int*);
  186. WINSHLWAPI BOOL WINAPI StrToIntExW(LPCWSTR,DWORD,int*);
  187. WINSHLWAPI BOOL WINAPI StrTrimA(LPSTR,LPCSTR);
  188. WINSHLWAPI BOOL WINAPI StrTrimW(LPWSTR,LPCWSTR);
  189. WINSHLWAPI LPSTR WINAPI PathAddBackslashA(LPSTR);
  190. WINSHLWAPI LPWSTR WINAPI PathAddBackslashW(LPWSTR);
  191. WINSHLWAPI BOOL WINAPI PathAddExtensionA(LPSTR,LPCSTR);
  192. WINSHLWAPI BOOL WINAPI PathAddExtensionW(LPWSTR,LPCWSTR);
  193. WINSHLWAPI BOOL WINAPI PathAppendA(LPSTR,LPCSTR);
  194. WINSHLWAPI BOOL WINAPI PathAppendW(LPWSTR,LPCWSTR);
  195. WINSHLWAPI LPSTR WINAPI PathBuildRootA(LPSTR,int);
  196. WINSHLWAPI LPWSTR WINAPI PathBuildRootW(LPWSTR,int);
  197. WINSHLWAPI BOOL WINAPI PathCanonicalizeA(LPSTR,LPCSTR);
  198. WINSHLWAPI BOOL WINAPI PathCanonicalizeW(LPWSTR,LPCWSTR);
  199. WINSHLWAPI LPSTR WINAPI PathCombineA(LPSTR,LPCSTR,LPCSTR);
  200. WINSHLWAPI LPWSTR WINAPI PathCombineW(LPWSTR,LPCWSTR,LPCWSTR);
  201. WINSHLWAPI int WINAPI PathCommonPrefixA(LPCSTR,LPCSTR,LPSTR);
  202. WINSHLWAPI int WINAPI PathCommonPrefixW(LPCWSTR,LPCWSTR,LPWSTR);
  203. WINSHLWAPI BOOL WINAPI PathCompactPathA(HDC,LPSTR,UINT);
  204. WINSHLWAPI BOOL WINAPI PathCompactPathW(HDC,LPWSTR,UINT);
  205. WINSHLWAPI BOOL WINAPI PathCompactPathExA(LPSTR,LPCSTR,UINT,DWORD);
  206. WINSHLWAPI BOOL WINAPI PathCompactPathExW(LPWSTR,LPCWSTR,UINT,DWORD);
  207. WINSHLWAPI HRESULT WINAPI PathCreateFromUrlA(LPCSTR,LPSTR,LPDWORD,DWORD);
  208. WINSHLWAPI HRESULT WINAPI PathCreateFromUrlW(LPCWSTR,LPWSTR,LPDWORD,DWORD);
  209. WINSHLWAPI BOOL WINAPI PathFileExistsA(LPCSTR);
  210. WINSHLWAPI BOOL WINAPI PathFileExistsW(LPCWSTR);
  211. WINSHLWAPI LPSTR WINAPI PathFindExtensionA(LPCSTR);
  212. WINSHLWAPI LPWSTR WINAPI PathFindExtensionW(LPCWSTR);
  213. WINSHLWAPI LPSTR WINAPI PathFindFileNameA(LPCSTR);
  214. WINSHLWAPI LPWSTR WINAPI PathFindFileNameW(LPCWSTR);
  215. WINSHLWAPI LPSTR WINAPI PathFindNextComponentA(LPCSTR);
  216. WINSHLWAPI LPWSTR WINAPI PathFindNextComponentW(LPCWSTR);
  217. WINSHLWAPI BOOL WINAPI PathFindOnPathA(LPSTR,LPCSTR*);
  218. WINSHLWAPI BOOL WINAPI PathFindOnPathW(LPWSTR,LPCWSTR*);
  219. WINSHLWAPI LPCSTR WINAPI PathFindSuffixArrayA(LPCSTR,LPCSTR*,int);
  220. WINSHLWAPI LPCWSTR WINAPI PathFindSuffixArrayW(LPCWSTR,LPCWSTR*,int);
  221. WINSHLWAPI LPSTR WINAPI PathGetArgsA(LPCSTR);
  222. WINSHLWAPI LPWSTR WINAPI PathGetArgsW(LPCWSTR);
  223. WINSHLWAPI UINT WINAPI PathGetCharTypeA(UCHAR);
  224. WINSHLWAPI UINT WINAPI PathGetCharTypeW(WCHAR);
  225. WINSHLWAPI int WINAPI PathGetDriveNumberA(LPCSTR);
  226. WINSHLWAPI int WINAPI PathGetDriveNumberW(LPCWSTR);
  227. WINSHLWAPI BOOL WINAPI PathIsContentTypeA(LPCSTR,LPCSTR);
  228. WINSHLWAPI BOOL WINAPI PathIsContentTypeW(LPCWSTR,LPCWSTR);
  229. WINSHLWAPI BOOL WINAPI PathIsDirectoryA(LPCSTR);
  230. WINSHLWAPI BOOL WINAPI PathIsDirectoryEmptyA(LPCSTR);
  231. WINSHLWAPI BOOL WINAPI PathIsDirectoryEmptyW(LPCWSTR);
  232. WINSHLWAPI BOOL WINAPI PathIsDirectoryW(LPCWSTR);
  233. WINSHLWAPI BOOL WINAPI PathIsFileSpecA(LPCSTR);
  234. WINSHLWAPI BOOL WINAPI PathIsFileSpecW(LPCWSTR);
  235. WINSHLWAPI BOOL WINAPI PathIsLFNFileSpecA(LPCSTR);
  236. WINSHLWAPI BOOL WINAPI PathIsLFNFileSpecW(LPCWSTR);
  237. WINSHLWAPI BOOL WINAPI PathIsNetworkPathA(LPCSTR);
  238. WINSHLWAPI BOOL WINAPI PathIsNetworkPathW(LPCWSTR);
  239. WINSHLWAPI BOOL WINAPI PathIsPrefixA(LPCSTR,LPCSTR);
  240. WINSHLWAPI BOOL WINAPI PathIsPrefixW(LPCWSTR,LPCWSTR);
  241. WINSHLWAPI BOOL WINAPI PathIsRelativeA(LPCSTR);
  242. WINSHLWAPI BOOL WINAPI PathIsRelativeW(LPCWSTR);
  243. WINSHLWAPI BOOL WINAPI PathIsRootA(LPCSTR);
  244. WINSHLWAPI BOOL WINAPI PathIsRootW(LPCWSTR);
  245. WINSHLWAPI BOOL WINAPI PathIsSameRootA(LPCSTR,LPCSTR);
  246. WINSHLWAPI BOOL WINAPI PathIsSameRootW(LPCWSTR,LPCWSTR);
  247. WINSHLWAPI BOOL WINAPI PathIsSystemFolderA(LPCSTR,DWORD);
  248. WINSHLWAPI BOOL WINAPI PathIsSystemFolderW(LPCWSTR,DWORD);
  249. WINSHLWAPI BOOL WINAPI PathIsUNCA(LPCSTR);
  250. WINSHLWAPI BOOL WINAPI PathIsUNCServerA(LPCSTR);
  251. WINSHLWAPI BOOL WINAPI PathIsUNCServerShareA(LPCSTR);
  252. WINSHLWAPI BOOL WINAPI PathIsUNCServerShareW(LPCWSTR);
  253. WINSHLWAPI BOOL WINAPI PathIsUNCServerW(LPCWSTR);
  254. WINSHLWAPI BOOL WINAPI PathIsUNCW(LPCWSTR);
  255. WINSHLWAPI BOOL WINAPI PathIsURLA(LPCSTR);
  256. WINSHLWAPI BOOL WINAPI PathIsURLW(LPCWSTR);
  257. WINSHLWAPI BOOL WINAPI PathMakePrettyA(LPSTR);
  258. WINSHLWAPI BOOL WINAPI PathMakePrettyW(LPWSTR);
  259. WINSHLWAPI BOOL WINAPI PathMakeSystemFolderA(LPSTR);
  260. WINSHLWAPI BOOL WINAPI PathMakeSystemFolderW(LPWSTR);
  261. WINSHLWAPI BOOL WINAPI PathMatchSpecA(LPCSTR,LPCSTR);
  262. WINSHLWAPI BOOL WINAPI PathMatchSpecW(LPCWSTR,LPCWSTR);
  263. WINSHLWAPI int WINAPI PathParseIconLocationA(LPSTR);
  264. WINSHLWAPI int WINAPI PathParseIconLocationW(LPWSTR);
  265. WINSHLWAPI void WINAPI PathQuoteSpacesA(LPSTR);
  266. WINSHLWAPI void WINAPI PathQuoteSpacesW(LPWSTR);
  267. WINSHLWAPI BOOL WINAPI PathRelativePathToA(LPSTR,LPCSTR,DWORD,LPCSTR,DWORD);
  268. WINSHLWAPI BOOL WINAPI PathRelativePathToW(LPWSTR,LPCWSTR,DWORD,LPCWSTR,DWORD);
  269. WINSHLWAPI void WINAPI PathRemoveArgsA(LPSTR);
  270. WINSHLWAPI void WINAPI PathRemoveArgsW(LPWSTR);
  271. WINSHLWAPI LPSTR WINAPI PathRemoveBackslashA(LPSTR);
  272. WINSHLWAPI LPWSTR WINAPI PathRemoveBackslashW(LPWSTR);
  273. WINSHLWAPI void WINAPI PathRemoveBlanksA(LPSTR);
  274. WINSHLWAPI void WINAPI PathRemoveBlanksW(LPWSTR);
  275. WINSHLWAPI void WINAPI PathRemoveExtensionA(LPSTR);
  276. WINSHLWAPI void WINAPI PathRemoveExtensionW(LPWSTR);
  277. WINSHLWAPI BOOL WINAPI PathRemoveFileSpecA(LPSTR);
  278. WINSHLWAPI BOOL WINAPI PathRemoveFileSpecW(LPWSTR);
  279. WINSHLWAPI BOOL WINAPI PathRenameExtensionA(LPSTR,LPCSTR);
  280. WINSHLWAPI BOOL WINAPI PathRenameExtensionW(LPWSTR,LPCWSTR);
  281. WINSHLWAPI BOOL WINAPI PathSearchAndQualifyA(LPCSTR,LPSTR,UINT);
  282. WINSHLWAPI BOOL WINAPI PathSearchAndQualifyW(LPCWSTR,LPWSTR,UINT);
  283. WINSHLWAPI void WINAPI PathSetDlgItemPathA(HWND,int,LPCSTR);
  284. WINSHLWAPI void WINAPI PathSetDlgItemPathW(HWND,int,LPCWSTR);
  285. WINSHLWAPI LPSTR WINAPI PathSkipRootA(LPCSTR);
  286. WINSHLWAPI LPWSTR WINAPI PathSkipRootW(LPCWSTR);
  287. WINSHLWAPI void WINAPI PathStripPathA(LPSTR);
  288. WINSHLWAPI void WINAPI PathStripPathW(LPWSTR);
  289. WINSHLWAPI BOOL WINAPI PathStripToRootA(LPSTR);
  290. WINSHLWAPI BOOL WINAPI PathStripToRootW(LPWSTR);
  291. WINSHLWAPI void WINAPI PathUndecorateA(LPSTR);
  292. WINSHLWAPI void WINAPI PathUndecorateW(LPWSTR);
  293. WINSHLWAPI BOOL WINAPI PathUnExpandEnvStringsA(LPCSTR,LPSTR,UINT);
  294. WINSHLWAPI BOOL WINAPI PathUnExpandEnvStringsW(LPCWSTR,LPWSTR,UINT);
  295. WINSHLWAPI BOOL WINAPI PathUnmakeSystemFolderA(LPSTR);
  296. WINSHLWAPI BOOL WINAPI PathUnmakeSystemFolderW(LPWSTR);
  297. WINSHLWAPI void WINAPI PathUnquoteSpacesA(LPSTR);
  298. WINSHLWAPI void WINAPI PathUnquoteSpacesW(LPWSTR);
  299. WINSHLWAPI HRESULT WINAPI SHAutoComplete(HWND,DWORD);
  300. #ifndef __OBJC__
  301. WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileA(LPCSTR,DWORD,struct IStream**);
  302. WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileW(LPCWSTR,DWORD,struct IStream**);
  303. WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD);
  304. WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2W(HKEY,LPCWSTR,LPCWSTR,DWORD);
  305. WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD);
  306. WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD);
  307. #endif
  308. WINSHLWAPI BOOL WINAPI SHCreateThread(LPTHREAD_START_ROUTINE,void*,DWORD,LPTHREAD_START_ROUTINE);
  309. WINSHLWAPI DWORD WINAPI SHCopyKeyA(HKEY,LPCSTR,HKEY,DWORD);
  310. WINSHLWAPI DWORD WINAPI SHCopyKeyW(HKEY,LPCWSTR,HKEY,DWORD);
  311. WINSHLWAPI DWORD WINAPI SHDeleteEmptyKeyA(HKEY,LPCSTR);
  312. WINSHLWAPI DWORD WINAPI SHDeleteEmptyKeyW(HKEY,LPCWSTR);
  313. WINSHLWAPI DWORD WINAPI SHDeleteKeyA(HKEY,LPCSTR);
  314. WINSHLWAPI DWORD WINAPI SHDeleteKeyW(HKEY,LPCWSTR);
  315. WINSHLWAPI DWORD WINAPI SHEnumKeyExA(HKEY,DWORD,LPSTR,LPDWORD);
  316. WINSHLWAPI DWORD WINAPI SHEnumKeyExW(HKEY,DWORD,LPWSTR,LPDWORD);
  317. WINSHLWAPI DWORD WINAPI SHQueryInfoKeyA(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
  318. WINSHLWAPI DWORD WINAPI SHQueryInfoKeyW(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
  319. WINSHLWAPI DWORD WINAPI SHQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
  320. WINSHLWAPI DWORD WINAPI SHQueryValueExW(HKEY,LPCWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
  321. #ifndef __OBJC__
  322. WINSHLWAPI HRESULT WINAPI SHGetThreadRef(IUnknown**);
  323. WINSHLWAPI HRESULT WINAPI SHSetThreadRef(IUnknown*);
  324. WINSHLWAPI BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*);
  325. #endif
  326. WINSHLWAPI DWORD WINAPI SHEnumValueA(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
  327. WINSHLWAPI DWORD WINAPI SHEnumValueW(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
  328. WINSHLWAPI DWORD WINAPI SHGetValueA(HKEY,LPCSTR,LPCSTR,LPDWORD,LPVOID,LPDWORD);
  329. WINSHLWAPI DWORD WINAPI SHGetValueW(HKEY,LPCWSTR,LPCWSTR,LPDWORD,LPVOID,LPDWORD);
  330. WINSHLWAPI DWORD WINAPI SHSetValueA(HKEY,LPCSTR,LPCSTR,DWORD,LPCVOID,DWORD);
  331. WINSHLWAPI DWORD WINAPI SHSetValueW(HKEY,LPCWSTR,LPCWSTR,DWORD,LPCVOID,DWORD);
  332. WINSHLWAPI DWORD WINAPI SHDeleteValueA(HKEY,LPCSTR,LPCSTR);
  333. WINSHLWAPI DWORD WINAPI SHDeleteValueW(HKEY,LPCWSTR,LPCWSTR);
  334. WINSHLWAPI HRESULT WINAPI AssocCreate(CLSID,const IID* const,LPVOID*);
  335. WINSHLWAPI HRESULT WINAPI AssocQueryKeyA(ASSOCF,ASSOCKEY,LPCSTR,LPCSTR,HKEY*);
  336. WINSHLWAPI HRESULT WINAPI AssocQueryKeyW(ASSOCF,ASSOCKEY,LPCWSTR,LPCWSTR,HKEY*);
  337. WINSHLWAPI HRESULT WINAPI AssocQueryStringA(ASSOCF,ASSOCSTR,LPCSTR,LPCSTR,LPSTR,DWORD*);
  338. WINSHLWAPI HRESULT WINAPI AssocQueryStringByKeyA(ASSOCF,ASSOCSTR,HKEY,LPCSTR,LPSTR,DWORD*);
  339. WINSHLWAPI HRESULT WINAPI AssocQueryStringByKeyW(ASSOCF,ASSOCSTR,HKEY,LPCWSTR,LPWSTR,DWORD*);
  340. WINSHLWAPI HRESULT WINAPI AssocQueryStringW(ASSOCF,ASSOCSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD*);
  341.    
  342. WINSHLWAPI HRESULT WINAPI UrlApplySchemeA(LPCSTR,LPSTR,LPDWORD,DWORD);
  343. WINSHLWAPI HRESULT WINAPI UrlApplySchemeW(LPCWSTR,LPWSTR,LPDWORD,DWORD);
  344. WINSHLWAPI HRESULT WINAPI UrlCanonicalizeA(LPCSTR,LPSTR,LPDWORD,DWORD);
  345. WINSHLWAPI HRESULT WINAPI UrlCanonicalizeW(LPCWSTR,LPWSTR,LPDWORD,DWORD);
  346. WINSHLWAPI HRESULT WINAPI UrlCombineA(LPCSTR,LPCSTR,LPSTR,LPDWORD,DWORD);
  347. WINSHLWAPI HRESULT WINAPI UrlCombineW(LPCWSTR,LPCWSTR,LPWSTR,LPDWORD,DWORD);
  348. WINSHLWAPI int WINAPI UrlCompareA(LPCSTR,LPCSTR,BOOL);
  349. WINSHLWAPI int WINAPI UrlCompareW(LPCWSTR,LPCWSTR,BOOL);
  350. WINSHLWAPI HRESULT WINAPI UrlCreateFromPathA(LPCSTR,LPSTR,LPDWORD,DWORD);
  351. WINSHLWAPI HRESULT WINAPI UrlCreateFromPathW(LPCWSTR,LPWSTR,LPDWORD,DWORD);
  352. WINSHLWAPI HRESULT WINAPI UrlEscapeA(LPCSTR,LPSTR,LPDWORD,DWORD);
  353. WINSHLWAPI HRESULT WINAPI UrlEscapeW(LPCWSTR,LPWSTR,LPDWORD,DWORD);
  354. WINSHLWAPI LPCSTR WINAPI UrlGetLocationA(LPCSTR);
  355. WINSHLWAPI LPCWSTR WINAPI UrlGetLocationW(LPCWSTR);
  356. WINSHLWAPI HRESULT WINAPI UrlGetPartA(LPCSTR,LPSTR,LPDWORD,DWORD,DWORD);
  357. WINSHLWAPI HRESULT WINAPI UrlGetPartW(LPCWSTR,LPWSTR,LPDWORD,DWORD,DWORD);
  358. WINSHLWAPI HRESULT WINAPI UrlHashA(LPCSTR,LPBYTE,DWORD);
  359. WINSHLWAPI HRESULT WINAPI UrlHashW(LPCWSTR,LPBYTE,DWORD);
  360. WINSHLWAPI BOOL WINAPI UrlIsA(LPCSTR,URLIS);
  361. WINSHLWAPI BOOL WINAPI UrlIsW(LPCWSTR,URLIS);
  362. #define UrlIsFileUrlA(pszURL) UrlIsA(pzURL, URLIS_FILEURL)
  363. #define UrlIsFileUrlW(pszURL) UrlIsW(pszURL, URLIS_FILEURL)
  364. WINSHLWAPI BOOL WINAPI UrlIsNoHistoryA(LPCSTR);
  365. WINSHLWAPI BOOL WINAPI UrlIsNoHistoryW(LPCWSTR);
  366. WINSHLWAPI BOOL WINAPI UrlIsOpaqueA(LPCSTR);
  367. WINSHLWAPI BOOL WINAPI UrlIsOpaqueW(LPCWSTR);
  368. WINSHLWAPI HRESULT WINAPI UrlUnescapeA(LPSTR,LPSTR,LPDWORD,DWORD);
  369. WINSHLWAPI HRESULT WINAPI UrlUnescapeW(LPWSTR,LPWSTR,LPDWORD,DWORD);
  370. #define UrlUnescapeInPlaceA(pszUrl,dwFlags )\
  371.     UrlUnescapeA(pszUrl, NULL, NULL, dwFlags | URL_UNESCAPE_INPLACE)
  372. #define UrlUnescapeInPlaceW(pszUrl,dwFlags )\
  373.     UrlUnescapeW(pszUrl, NULL, NULL, dwFlags | URL_UNESCAPE_INPLACE)
  374. WINSHLWAPI DWORD WINAPI SHRegCloseUSKey(HUSKEY);
  375. WINSHLWAPI LONG WINAPI SHRegCreateUSKeyA(LPCSTR,REGSAM,HUSKEY,PHUSKEY,DWORD);
  376. WINSHLWAPI LONG WINAPI SHRegCreateUSKeyW(LPCWSTR,REGSAM,HUSKEY,PHUSKEY,DWORD);
  377. WINSHLWAPI LONG WINAPI SHRegDeleteEmptyUSKeyA(HUSKEY,LPCSTR,SHREGDEL_FLAGS);
  378. WINSHLWAPI LONG WINAPI SHRegDeleteEmptyUSKeyW(HUSKEY,LPCWSTR,SHREGDEL_FLAGS);
  379. WINSHLWAPI LONG WINAPI SHRegDeleteUSValueA(HUSKEY,LPCSTR,SHREGDEL_FLAGS);
  380. WINSHLWAPI LONG WINAPI SHRegDeleteUSValueW(HUSKEY,LPCWSTR,SHREGDEL_FLAGS);
  381. WINSHLWAPI HKEY WINAPI SHRegDuplicateHKey(HKEY);
  382. WINSHLWAPI DWORD WINAPI SHRegEnumUSKeyA(HUSKEY,DWORD,LPSTR,LPDWORD,SHREGENUM_FLAGS);
  383. WINSHLWAPI DWORD WINAPI SHRegEnumUSKeyW(HUSKEY,DWORD,LPWSTR,LPDWORD,SHREGENUM_FLAGS);
  384. WINSHLWAPI DWORD WINAPI SHRegEnumUSValueA(HUSKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD,SHREGENUM_FLAGS);
  385. WINSHLWAPI DWORD WINAPI SHRegEnumUSValueW(HUSKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD,SHREGENUM_FLAGS);
  386. WINSHLWAPI BOOL WINAPI SHRegGetBoolUSValueA(LPCSTR,LPCSTR,BOOL,BOOL);
  387. WINSHLWAPI BOOL WINAPI SHRegGetBoolUSValueW(LPCWSTR,LPCWSTR,BOOL,BOOL);
  388. WINSHLWAPI DWORD WINAPI SHRegGetPathA(HKEY,LPCSTR,LPCSTR,LPSTR,DWORD);
  389. WINSHLWAPI DWORD WINAPI SHRegGetPathW(HKEY,LPCWSTR,LPCWSTR,LPWSTR,DWORD);
  390. WINSHLWAPI LONG WINAPI SHRegGetUSValueA(LPCSTR,LPCSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD);
  391. WINSHLWAPI LONG WINAPI SHRegGetUSValueW(LPCWSTR,LPCWSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD);
  392. WINSHLWAPI LONG WINAPI SHRegOpenUSKeyA(LPCSTR,REGSAM,HUSKEY,PHUSKEY,BOOL);
  393. WINSHLWAPI LONG WINAPI SHRegOpenUSKeyW(LPCWSTR,REGSAM,HUSKEY,PHUSKEY,BOOL);
  394. WINSHLWAPI DWORD WINAPI SHRegQueryInfoUSKeyA(HUSKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD,SHREGENUM_FLAGS);
  395. WINSHLWAPI DWORD WINAPI SHRegQueryInfoUSKeyW(HUSKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD,SHREGENUM_FLAGS);
  396. WINSHLWAPI LONG WINAPI SHRegQueryUSValueA(HUSKEY,LPCSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD);
  397. WINSHLWAPI LONG WINAPI SHRegQueryUSValueW(HUSKEY,LPCWSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD);
  398. WINSHLWAPI DWORD WINAPI SHRegSetPathA(HKEY,LPCSTR,LPCSTR,LPCSTR,DWORD);
  399. WINSHLWAPI DWORD WINAPI SHRegSetPathW(HKEY,LPCWSTR,LPCWSTR,LPCWSTR,DWORD);
  400. WINSHLWAPI LONG WINAPI SHRegSetUSValueA(LPCSTR,LPCSTR,DWORD,LPVOID,DWORD,DWORD);
  401. WINSHLWAPI LONG WINAPI SHRegSetUSValueW(LPCWSTR,LPCWSTR,DWORD,LPVOID,DWORD,DWORD);
  402. WINSHLWAPI LONG WINAPI SHRegWriteUSValueA(HUSKEY,LPCSTR,DWORD,LPVOID,DWORD,DWORD);
  403. WINSHLWAPI LONG WINAPI SHRegWriteUSValueW(HUSKEY,LPCWSTR,DWORD,LPVOID,DWORD,DWORD);
  404. WINSHLWAPI HRESULT WINAPI HashData(LPBYTE,DWORD,LPBYTE,DWORD);
  405. WINSHLWAPI HPALETTE WINAPI SHCreateShellPalette(HDC);
  406. WINSHLWAPI COLORREF WINAPI ColorHLSToRGB(WORD,WORD,WORD);
  407. WINSHLWAPI COLORREF WINAPI ColorAdjustLuma(COLORREF,int,BOOL);
  408. WINSHLWAPI void WINAPI ColorRGBToHLS(COLORREF,WORD*,WORD*,WORD*);  
  409. WINSHLWAPI int __cdecl wnsprintfA(LPSTR,int,LPCSTR,...);
  410. WINSHLWAPI int __cdecl wnsprintfW(LPWSTR,int,LPCWSTR,...);
  411. WINSHLWAPI int WINAPI wvnsprintfA(LPSTR,int,LPCSTR,va_list);
  412. WINSHLWAPI int WINAPI wvnsprintfW(LPWSTR,int,LPCWSTR,va_list);
  413.  
  414. HINSTANCE WINAPI MLLoadLibraryA(LPCSTR,HANDLE,DWORD,LPCSTR,BOOL);
  415. HINSTANCE WINAPI MLLoadLibraryW(LPCWSTR,HANDLE,DWORD,LPCWSTR,BOOL);
  416.  
  417. HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
  418.  
  419. #ifdef UNICODE
  420. #define ChrCmpI ChrCmpIW
  421. #define IntlStrEqN IntlStrEqNW
  422. #define IntlStrEqNI IntlStrEqNIW
  423. #define IntlStrEqWorker IntlStrEqWorkerW
  424. #define SHStrDup SHStrDupW
  425. #define StrCat StrCatW
  426. #define StrCatBuff StrCatBuffW
  427. #define StrChr StrChrW
  428. #define StrChrI StrChrIW
  429. #define StrCmp StrCmpW
  430. #define StrCmpI StrCmpIW
  431. #define StrCmpNI StrCmpNIW
  432. #define StrCmpN StrCmpNW
  433. #define StrCpyN StrCpyNW
  434. #define StrCpy StrCpyW
  435. #define StrCSpnI StrCSpnIW
  436. #define StrCSpn StrCSpnW
  437. #define StrDup StrDupW
  438. #define StrFormatByteSize StrFormatByteSizeW
  439. #define StrFormatKBSize StrFormatKBSizeW
  440. #define StrFromTimeInterval StrFromTimeIntervalW
  441. #define StrIsIntlEqual StrIsIntlEqualW
  442. #define StrNCat StrNCatW
  443. #define StrPBrk StrPBrkW
  444. #define StrRChr StrRChrW
  445. #define StrRChrI StrRChrIW
  446. #ifndef __OBJC__
  447. #define StrRetToBuf StrRetToBufW
  448. #define StrRetToStr StrRetToStrW
  449. #endif
  450. #define StrRStrI StrRStrIW
  451. #define StrSpn StrSpnW
  452. #define StrStrI StrStrIW
  453. #define StrStr StrStrW
  454. #define StrToInt StrToIntW
  455. #define StrToIntEx StrToIntExW
  456. #define StrTrim StrTrimW
  457. #define PathAddBackslash PathAddBackslashW
  458. #define PathAddExtension PathAddExtensionW
  459. #define PathAppend PathAppendW
  460. #define PathBuildRoot PathBuildRootW
  461. #define PathCanonicalize PathCanonicalizeW
  462. #define PathCombine PathCombineW
  463. #define PathCommonPrefix PathCommonPrefixW
  464. #define PathCompactPath PathCompactPathW
  465. #define PathCompactPathEx PathCompactPathExW
  466. #define PathCreateFromUrl PathCreateFromUrlW
  467. #define PathFileExists PathFileExistsW
  468. #define PathFindExtension PathFindExtensionW
  469. #define PathFindFileName PathFindFileNameW
  470. #define PathFindNextComponent PathFindNextComponentW
  471. #define PathFindOnPath PathFindOnPathW
  472. #define PathFindSuffixArray PathFindSuffixArrayW
  473. #define PathGetArgs PathGetArgsW
  474. #define PathGetCharType PathGetCharTypeW
  475. #define PathGetDriveNumber PathGetDriveNumberW
  476. #define PathIsContentType PathIsContentTypeW
  477. #define PathIsDirectoryEmpty PathIsDirectoryEmptyW
  478. #define PathIsDirectory PathIsDirectoryW
  479. #define PathIsFileSpec PathIsFileSpecW
  480. #define PathIsLFNFileSpec PathIsLFNFileSpecW
  481. #define PathIsNetworkPath PathIsNetworkPathW
  482. #define PathIsPrefix PathIsPrefixW
  483. #define PathIsRelative PathIsRelativeW
  484. #define PathIsRoot PathIsRootW
  485. #define PathIsSameRoot PathIsSameRootW
  486. #define PathIsSystemFolder PathIsSystemFolderW
  487. #define PathIsUNCServerShare PathIsUNCServerShareW
  488. #define PathIsUNCServer PathIsUNCServerW
  489. #define PathIsUNC PathIsUNCW
  490. #define PathIsURL PathIsURLW
  491. #define PathMakePretty PathMakePrettyW
  492. #define PathMakeSystemFolder PathMakeSystemFolderW
  493. #define PathMatchSpec PathMatchSpecW
  494. #define PathParseIconLocation PathParseIconLocationW
  495. #define PathQuoteSpaces PathQuoteSpacesW
  496. #define PathRelativePathTo PathRelativePathToW
  497. #define PathRemoveArgs PathRemoveArgsW
  498. #define PathRemoveBackslash PathRemoveBackslashW
  499. #define PathRemoveBlanks PathRemoveBlanksW
  500. #define PathRemoveExtension PathRemoveExtensionW
  501. #define PathRemoveFileSpec PathRemoveFileSpecW
  502. #define PathRenameExtension PathRenameExtensionW
  503. #define PathSearchAndQualify PathSearchAndQualifyW
  504. #define PathSetDlgItemPath PathSetDlgItemPathW
  505. #define PathSkipRoot PathSkipRootW
  506. #define PathStripPath PathStripPathW
  507. #define PathStripToRoot PathStripToRootW
  508. #define PathUndecorate PathUndecorateW
  509. #define PathUnExpandEnvStrings PathUnExpandEnvStringsW
  510. #define PathUnmakeSystemFolder PathUnmakeSystemFolderW
  511. #define PathUnquoteSpaces PathUnquoteSpacesW
  512. #ifndef __OBJC__
  513. #define SHCreateStreamOnFile SHCreateStreamOnFileW
  514. #define SHOpenRegStream SHOpenRegStreamW
  515. #define SHOpenRegStream2 SHOpenRegStream2W
  516. #endif
  517. #define SHCopyKey SHCopyKeyW
  518. #define SHDeleteEmptyKey SHDeleteEmptyKeyW
  519. #define SHDeleteKey SHDeleteKeyW
  520. #define SHEnumKeyEx SHEnumKeyExW
  521. #define SHQueryInfoKey SHRegQueryInfoKeyW
  522. #define SHQueryValueEx SHQueryValueExW
  523. #define SHEnumValue SHEnumValueW
  524. #define SHGetValue SHGetValueW
  525. #define SHSetValue SHSetValueW
  526. #define SHDeleteValue SHDeleteValueW
  527. #define AssocQueryKey AssocQueryKeyW
  528. #define AssocQueryStringByKey AssocQueryStringByKeyW
  529. #define AssocQueryString AssocQueryStringW
  530. #define UrlApplyScheme UrlApplySchemeW
  531. #define UrlCanonicalize UrlCanonicalizeW
  532. #define UrlCombine UrlCombineW
  533. #define UrlCompare UrlCompareW
  534. #define UrlCreateFromPath UrlCreateFromPathW
  535. #define UrlEscape UrlEscapeW
  536. #define UrlGetLocation UrlGetLocationW
  537. #define UrlGetPart UrlGetPartW
  538. #define UrlHash UrlHashW
  539. #define UrlIs UrlIsW
  540. #define UrlIsFileUrl UrlIsFileUrlW
  541. #define UrlIsNoHistory UrlIsNoHistoryW
  542. #define UrlIsOpaque UrlIsOpaqueW
  543. #define UrlUnescape UrlUnescapeW
  544. #define UrlUnescapeInPlace UrlUnescapeInPlaceW
  545. #define SHRegCreateUSKey SHRegCreateUSKeyW
  546. #define SHRegDeleteEmptyUSKey SHRegDeleteEmptyUSKeyW
  547. #define SHRegDeleteUSValue SHRegDeleteUSValueW
  548. #define SHRegEnumUSKey SHRegEnumUSKeyW
  549. #define SHRegEnumUSValue SHRegEnumUSValueW
  550. #define SHRegGetBoolUSValue SHRegGetBoolUSValueW
  551. #define SHRegGetPath SHRegGetPathW
  552. #define SHRegGetUSValue SHRegGetUSValueW
  553. #define SHRegOpenUSKey SHRegOpenUSKeyW
  554. #define SHRegQueryInfoUSKey SHRegQueryInfoUSKeyW
  555. #define SHRegQueryUSValue SHRegQueryUSValueW
  556. #define SHRegSetPath SHRegSetPathW
  557. #define SHRegSetUSValue SHRegSetUSValueW
  558. #define SHRegWriteUSValue SHRegWriteUSValueW
  559. #define wnsprintf wnsprintfW
  560. #define wvnsprintf wvnsprintfW
  561. #else /* UNICODE */
  562. #define ChrCmpI ChrCmpIA
  563. #define IntlStrEqN IntlStrEqNA
  564. #define IntlStrEqNI IntlStrEqNIA
  565. #define IntlStrEqWorker IntlStrEqWorkerA
  566. #define SHStrDup SHStrDupA
  567. #define StrCat lstrcatA
  568. #define StrCatBuff StrCatBuffA
  569. #define StrChr StrChrA
  570. #define StrChrI StrChrIA
  571. #define StrCmp lstrcmpA
  572. #define StrCmpI lstrcmpiA
  573. #define StrCmpNI StrCmpNIA
  574. #define StrCmpN StrCmpNA
  575. #define StrCpyN lstrcpynA
  576. #define StrCpy lstrcpyA
  577. #define StrCSpnI StrCSpnIA
  578. #define StrCSpn StrCSpnA
  579. #define StrDup StrDupA
  580. #define StrFormatByteSize StrFormatByteSizeA
  581. #define StrFormatKBSize StrFormatKBSizeA
  582. #define StrFromTimeInterval StrFromTimeIntervalA
  583. #define StrIsIntlEqual StrIsIntlEqualA
  584. #define StrNCat StrNCatA
  585. #define StrPBrk StrPBrkA
  586. #define StrRChr StrRChrA
  587. #define StrRChrI StrRChrIA
  588. #ifndef __OBJC__
  589. #define StrRetToBuf StrRetToBufA
  590. #define StrRetToStr StrRetToStrA
  591. #endif
  592. #define StrRStrI StrRStrIA
  593. #define StrSpn StrSpnA
  594. #define StrStrI StrStrIA
  595. #define StrStr StrStrA
  596. #define StrToInt StrToIntA
  597. #define StrToIntEx StrToIntExA
  598. #define StrTrim StrTrimA
  599. #define PathAddBackslash PathAddBackslashA
  600. #define PathAddExtension PathAddExtensionA
  601. #define PathAppend PathAppendA
  602. #define PathBuildRoot PathBuildRootA
  603. #define PathCanonicalize PathCanonicalizeA
  604. #define PathCombine PathCombineA
  605. #define PathCommonPrefix PathCommonPrefixA
  606. #define PathCompactPath PathCompactPathA
  607. #define PathCompactPathEx PathCompactPathExA
  608. #define PathCreateFromUrl PathCreateFromUrlA
  609. #define PathFileExists PathFileExistsA
  610. #define PathFindExtension PathFindExtensionA
  611. #define PathFindFileName PathFindFileNameA
  612. #define PathFindNextComponent PathFindNextComponentA
  613. #define PathFindOnPath PathFindOnPathA
  614. #define PathFindSuffixArray PathFindSuffixArrayA
  615. #define PathGetArgs PathGetArgsA
  616. #define PathGetCharType PathGetCharTypeA
  617. #define PathGetDriveNumber PathGetDriveNumberA
  618. #define PathIsContentType PathIsContentTypeA
  619. #define PathIsDirectoryEmpty PathIsDirectoryEmptyA
  620. #define PathIsDirectory PathIsDirectoryA
  621. #define PathIsFileSpec PathIsFileSpecA
  622. #define PathIsLFNFileSpec PathIsLFNFileSpecA
  623. #define PathIsNetworkPath PathIsNetworkPathA
  624. #define PathIsPrefix PathIsPrefixA
  625. #define PathIsRelative PathIsRelativeA
  626. #define PathIsRoot PathIsRootA
  627. #define PathIsSameRoot PathIsSameRootA
  628. #define PathIsSystemFolder PathIsSystemFolderA
  629. #define PathIsUNCServerShare PathIsUNCServerShareA
  630. #define PathIsUNCServer PathIsUNCServerA
  631. #define PathIsUNC PathIsUNCA
  632. #define PathIsURL PathIsURLA
  633. #define PathMakePretty PathMakePrettyA
  634. #define PathMakeSystemFolder PathMakeSystemFolderA
  635. #define PathMatchSpec PathMatchSpecA
  636. #define PathParseIconLocation PathParseIconLocationA
  637. #define PathQuoteSpaces PathQuoteSpacesA
  638. #define PathRelativePathTo PathRelativePathToA
  639. #define PathRemoveArgs PathRemoveArgsA
  640. #define PathRemoveBackslash PathRemoveBackslashA
  641. #define PathRemoveBlanks PathRemoveBlanksA
  642. #define PathRemoveExtension PathRemoveExtensionA
  643. #define PathRemoveFileSpec PathRemoveFileSpecA
  644. #define PathRenameExtension PathRenameExtensionA
  645. #define PathSearchAndQualify PathSearchAndQualifyA
  646. #define PathSetDlgItemPath PathSetDlgItemPathA
  647. #define PathSkipRoot PathSkipRootA
  648. #define PathStripPath PathStripPathA
  649. #define PathStripToRoot PathStripToRootA
  650. #define PathUndecorate PathUndecorateA
  651. #define PathUnExpandEnvStrings PathUnExpandEnvStringsA
  652. #define PathUnmakeSystemFolder PathUnmakeSystemFolderA
  653. #define PathUnquoteSpaces PathUnquoteSpacesA
  654. #ifndef __OBJC__
  655. #define SHCreateStreamOnFile SHCreateStreamOnFileA
  656. #define SHOpenRegStream SHOpenRegStreamA
  657. #define SHOpenRegStream2 SHOpenRegStream2A
  658. #endif
  659. #define SHCopyKey SHCopyKeyA
  660. #define SHDeleteEmptyKey SHDeleteEmptyKeyA
  661. #define SHDeleteKey SHDeleteKeyA
  662. #define SHEnumKeyEx SHEnumKeyExA
  663. #define SHQueryInfoKey SHRegQueryInfoKeyA
  664. #define SHQueryValueEx SHQueryValueExA
  665. #define SHEnumValue SHEnumValueA
  666. #define SHGetValue SHGetValueA
  667. #define SHSetValue SHSetValueA
  668. #define SHDeleteValue SHDeleteValueA
  669. #define AssocQueryKey AssocQueryKeyA
  670. #define AssocQueryStringByKey AssocQueryStringByKeyA
  671. #define AssocQueryString AssocQueryStringA
  672. #define UrlApplyScheme UrlApplySchemeA
  673. #define UrlCanonicalize UrlCanonicalizeA
  674. #define UrlCombine UrlCombineA
  675. #define UrlCompare UrlCompareA
  676. #define UrlCreateFromPath UrlCreateFromPathA
  677. #define UrlEscape UrlEscapeA
  678. #define UrlGetLocation UrlGetLocationA
  679. #define UrlGetPart UrlGetPartA
  680. #define UrlHash UrlHashA
  681. #define UrlIs UrlIsA
  682. #define UrlIsFileUrl UrlIsFileUrl
  683. #define UrlIsNoHistory UrlIsNoHistoryA
  684. #define UrlIsOpaque UrlIsOpaqueA
  685. #define UrlUnescape UrlUnescapeA
  686. #define UrlUnescapeInPlace UrlUnescapeInPlaceA
  687. #define SHRegCreateUSKey SHRegCreateUSKeyA
  688. #define SHRegDeleteEmptyUSKey SHRegDeleteEmptyUSKeyA
  689. #define SHRegDeleteUSValue SHRegDeleteUSValueA
  690. #define SHRegEnumUSKey SHRegEnumUSKeyA
  691. #define SHRegEnumUSValue SHRegEnumUSValueA
  692. #define SHRegGetBoolUSValue SHRegGetBoolUSValueA
  693. #define SHRegGetPath SHRegGetPathA
  694. #define SHRegGetUSValue SHRegGetUSValueA
  695. #define SHRegOpenUSKey SHRegOpenUSKeyA
  696. #define SHRegQueryInfoUSKey SHRegQueryInfoUSKeyA
  697. #define SHRegQueryUSValue SHRegQueryUSValueA
  698. #define SHRegSetPath SHRegSetPathA
  699. #define SHRegSetUSValue SHRegSetUSValueA
  700. #define SHRegWriteUSValue SHRegWriteUSValueA
  701. #define wnsprintf wnsprintfA
  702. #define wvnsprintf wvnsprintfA
  703. #endif /* UNICODE */
  704.  
  705. #define StrToLong StrToInt
  706.  
  707. #endif /* !RC_INVOKED */
  708.  
  709. #ifdef __cplusplus
  710. }
  711. #endif
  712. #endif /* ! defined _SHLWAPI_H */
  713.