1 #ifndef __WINE_SHLWAPI_H
2 #define __WINE_SHLWAPI_H
8 #endif /* defined(__cplusplus) */
10 BOOL WINAPI
PathAppendA(LPSTR lpszPath1
,LPCSTR lpszPath2
);
11 BOOL WINAPI
PathAppendW(LPWSTR lpszPath1
,LPCWSTR lpszPath2
);
13 LPSTR WINAPI
PathBuildRootA(LPSTR lpszPath
, int drive
);
14 LPWSTR WINAPI
PathBuildRootW(LPWSTR lpszPath
, int drive
);
16 LPSTR WINAPI
PathGetArgsA(LPCSTR lpszPath
);
17 LPWSTR WINAPI
PathGetArgsW(LPCWSTR lpszPath
);
19 BOOL WINAPI
PathRemoveFileSpecA(LPSTR lpszPath
);
20 BOOL WINAPI
PathRemoveFileSpecW(LPWSTR lpszPath
);
22 void WINAPI
PathStripPathA(LPSTR lpszPath
);
23 void WINAPI
PathStripPathW(LPWSTR lpszPath
);
25 void WINAPI
PathRemoveArgsA(LPSTR lpszPath
);
26 void WINAPI
PathRemoveArgsW(LPWSTR lpszPath
);
28 void WINAPI
PathRemoveExtensionA(LPSTR lpszPath
);
29 void WINAPI
PathRemoveExtensionW(LPWSTR lpszPath
);
31 void WINAPI
PathUnquoteSpacesA(LPSTR str
);
32 void WINAPI
PathUnquoteSpacesW(LPWSTR str
);
34 int WINAPI
PathParseIconLocationA(LPSTR lpszPath
);
35 int WINAPI
PathParseIconLocationW(LPWSTR lpszPath
);
37 BOOL WINAPI
PathIsDirectoryA(LPCSTR lpszPath
);
38 BOOL WINAPI
PathIsDirectoryW(LPCWSTR lpszPath
);
40 BOOL WINAPI
PathFileExistsA(LPCSTR lpszPath
);
41 BOOL WINAPI
PathFileExistsW(LPCWSTR lpszPath
);
43 BOOL WINAPI
PathIsSameRootA(LPCSTR lpszPath1
, LPCSTR lpszPath2
);
44 BOOL WINAPI
PathIsSameRootW(LPCWSTR lpszPath1
, LPCWSTR lpszPath2
);
46 BOOL WINAPI
PathSetDlgItemPathA(HWND hDlg
, int id
, LPCSTR pszPath
);
47 BOOL WINAPI
PathSetDlgItemPathW(HWND hDlg
, int id
, LPCWSTR pszPath
);
49 LPSTR WINAPI
PathFindFileNameA(LPCSTR pPath
);
50 LPWSTR WINAPI
PathFindFileNameW(LPCWSTR pPath
);
51 #define PathFindFileName WINELIB_NAME_AW(PathFindFileName)
52 LPVOID WINAPI
PathFindFileNameAW(LPCVOID path
);
54 int WINAPI
PathGetDriveNumberA(LPCSTR lpszPath
);
55 int WINAPI
PathGetDriveNumberW(LPCWSTR lpszPath
);
56 #define PathGetDriveNumber WINELIB_NAME_AW(PathGetDriveNumber)
58 BOOL WINAPI
PathCanonicalizeA(LPSTR lpszDst
, LPCSTR lpszSrc
);
59 BOOL WINAPI
PathCanonicalizeW(LPWSTR lpszDst
, LPCWSTR lpszSrc
);
60 #define PathCanonicalize WINELIB_NAME_AW(PathCanonicalize)
62 LPSTR WINAPI
PathFindNextComponentA(LPCSTR pszPath
);
63 LPWSTR WINAPI
PathFindNextComponentW(LPCWSTR pszPath
);
64 #define PathFindNextComponent WINELIB_NAME_AW(PathFindNextComponent)
66 BOOL WINAPI
PathIsURLA(LPCSTR pszPath
);
67 BOOL WINAPI
PathIsURLW(LPCWSTR pszPath
);
68 #define PathIsURL WINELIB_NAME_AW(PathIsURL)
70 BOOL WINAPI
PathAddExtensionA(LPSTR pszPath
, LPCSTR pszExt
);
71 BOOL WINAPI
PathAddExtensionW(LPWSTR pszPath
, LPCWSTR pszExt
);
72 #define PathAddExtension WINELIB_NAME_AW(PathAddExtension)
74 BOOL WINAPI
PathStripToRootA(LPSTR pszPath
);
75 BOOL WINAPI
PathStripToRootW(LPWSTR pszPath
);
76 #define PathStripToRoot WINELIB_NAME_AW(PathStripToRoot)
78 INT WINAPI
StrCSpnA(LPCSTR lpStr
, LPCSTR lpSet
);
79 INT WINAPI
StrCSpnW(LPCWSTR lpStr
, LPCWSTR lpSet
);
80 #define StrCSpn WINELIB_NAME_AW(StrCSpn)
82 INT WINAPI
StrCSpnIA(LPCSTR lpStr
, LPCSTR lpSet
);
83 INT WINAPI
StrCSpnIW(LPCWSTR lpStr
, LPCWSTR lpSet
);
84 #define StrCSpnI WINELIB_NAME_AW(StrCSpnI)
86 #define StrCatA lstrcatA
87 LPWSTR WINAPI
StrCatW(LPWSTR front
, LPCWSTR back
);
88 #define StrCat WINELIB_NAME_AW(StrCat)
90 LPSTR WINAPI
StrCatBuffA(LPSTR front
, LPCSTR back
, INT size
);
91 LPWSTR WINAPI
StrCatBuffW(LPWSTR front
, LPCWSTR back
, INT size
);
92 #define StrCatBuff WINELIB_NAME_AW(StrCatBuff)
94 LPSTR WINAPI
StrChrA(LPCSTR lpStart
, WORD wMatch
);
95 LPWSTR WINAPI
StrChrW(LPCWSTR lpStart
, WCHAR wMatch
);
96 #define StrChr WINELIB_NAME_AW(StrChr)
98 LPSTR WINAPI
StrChrIA(LPCSTR lpStart
, WORD wMatch
);
99 LPWSTR WINAPI
StrChrIW(LPCWSTR lpStart
, WCHAR wMatch
);
100 #define StrChrI WINELIB_NAME_AW(StrChrI)
102 INT WINAPI
StrCmpNA(LPCSTR lpStr1
, LPCSTR lpStr2
, INT nChar
);
103 INT WINAPI
StrCmpNW(LPCWSTR lpStr1
, LPCWSTR lpStr2
, INT nChar
);
104 #define StrCmpN WINELIB_NAME_AW(StrCmpN)
106 INT WINAPI
StrCmpNIA(LPCSTR lpStr1
, LPCSTR lpStr2
, INT nChar
);
107 INT WINAPI
StrCmpNIW(LPCWSTR lpStr1
, LPCWSTR lpStr2
, INT nChar
);
108 #define StrCmpNI WINELIB_NAME_AW(StrCmpNI)
110 LPSTR WINAPI
StrDupA(LPCSTR lpSrc
);
111 LPWSTR WINAPI
StrDupW(LPCWSTR lpSrc
);
112 #define StrDup WINELIB_NAME_AW(StrDup)
116 HRESULT WINAPI
StrRetToBufA(struct _STRRET
*src
, const struct _ITEMIDLIST
*pidl
, LPSTR dest
, DWORD len
);
117 HRESULT WINAPI
StrRetToBufW(struct _STRRET
*src
, const struct _ITEMIDLIST
*pidl
, LPWSTR dest
, DWORD len
);
118 #define StrRetToBuf WINELIB_NAME_AW(StrRetToBuf)
120 void WINAPI
PathRemoveBlanksA(LPSTR lpszPath
);
121 void WINAPI
PathRemoveBlanksW(LPWSTR lpszPath
);
122 #define PathRemoveBlanks WINELIB_NAME_AW(PathRemoveBlanks)
123 void WINAPI
PathRemoveBlanksAW(LPVOID lpszPath
);
125 HRESULT WINAPI
SHDeleteKeyA(HKEY hKey
, LPCSTR lpszSubKey
);
126 HRESULT WINAPI
SHDeleteKeyW(HKEY hkey
, LPCWSTR pszSubKey
);
127 #define SHDeleteKey WINELIB_NAME_AW(SHDeleteKey)
129 DWORD WINAPI
SHDeleteEmptyKeyA(HKEY hKey
, LPCSTR lpszSubKey
);
130 DWORD WINAPI
SHDeleteEmptyKeyW(HKEY hKey
, LPCWSTR lpszSubKey
);
131 #define SHDeleteEmptyKey WINELIB_NAME_AW(SHDeleteEmptyKey)
133 typedef struct _DllVersionInfo
{
135 DWORD dwMajorVersion
;
136 DWORD dwMinorVersion
;
141 #define DLLVER_PLATFORM_WINDOWS 0x00000001 // Windows 9x
142 #define DLLVER_PLATFORM_NT 0x00000002 // Windows NT
144 typedef HRESULT (CALLBACK
* DLLGETVERSIONPROC
)(DLLVERSIONINFO
*);
148 #endif /* defined(__cplusplus) */
150 #endif /* __WINE_SHLWAPI_H */