diff --git a/dlls/shell32/shellstring.c b/dlls/shell32/shellstring.c index 31e53fb46c0..fac7cbea132 100644 --- a/dlls/shell32/shellstring.c +++ b/dlls/shell32/shellstring.c @@ -8,6 +8,7 @@ #include "debugtools.h" #include "heap.h" +#include "shlwapi.h" #include "shellapi.h" #include "shell32_main.h" #include "wine/undocshell.h" diff --git a/dlls/shlwapi/string.c b/dlls/shlwapi/string.c index 8becbd43f59..1932617c82b 100644 --- a/dlls/shlwapi/string.c +++ b/dlls/shlwapi/string.c @@ -4,7 +4,10 @@ #include #include "winerror.h" -#include "wine/undocshell.h" +#include "windef.h" +#include "wingdi.h" +#include "winuser.h" +#include "shlwapi.h" #include "wine/unicode.h" #include "heap.h" #include "debugtools.h" @@ -14,7 +17,7 @@ DEFAULT_DEBUG_CHANNEL(shell); /************************************************************************* * StrChrA [SHLWAPI] */ -LPSTR WINAPI StrChrA (LPCSTR str, INT c) +LPSTR WINAPI StrChrA (LPCSTR str, WORD c) { TRACE("%s %i\n", str,c); return strchr(str, c); @@ -24,7 +27,7 @@ LPSTR WINAPI StrChrA (LPCSTR str, INT c) * StrChrW [SHLWAPI] * */ -LPWSTR WINAPI StrChrW (LPWSTR str, WCHAR x ) +LPWSTR WINAPI StrChrW (LPCWSTR str, WCHAR x ) { TRACE("%s 0x%04x\n",debugstr_w(str),x); return strchrW(str, x); diff --git a/include/shlwapi.h b/include/shlwapi.h index 28202c016a8..1f4f5df8cf2 100644 --- a/include/shlwapi.h +++ b/include/shlwapi.h @@ -3,6 +3,7 @@ #include "windef.h" #include "wine/obj_queryassociations.h" +#include "wine/obj_shellfolder.h" #ifdef __cplusplus extern "C" { @@ -76,10 +77,48 @@ BOOL WINAPI PathStripToRootA(LPSTR pszPath); BOOL WINAPI PathStripToRootW(LPWSTR pszPath); #define PathStripToRoot WINELIB_NAME_AW(PathStripToRoot) +INT WINAPI StrCSpnA(LPCSTR lpStr, LPCSTR lpSet); +INT WINAPI StrCSpnW(LPCWSTR lpStr, LPCWSTR lpSet); +#define StrCSpn WINELIB_NAME_AW(StrCSpn) + +INT WINAPI StrCSpnIA(LPCSTR lpStr, LPCSTR lpSet); +INT WINAPI StrCSpnIW(LPCWSTR lpStr, LPCWSTR lpSet); +#define StrCSpnI WINELIB_NAME_AW(StrCSpnI) + +#define StrCatA lstrcatA +LPWSTR WINAPI StrCatW(LPWSTR front, LPCWSTR back); +#define StrCat WINELIB_NAME_AW(StrCat) + +LPSTR WINAPI StrCatBuffA(LPSTR front, LPCSTR back, INT size); +LPWSTR WINAPI StrCatBuffW(LPWSTR front, LPCWSTR back, INT size); +#define StrCatBuff WINELIB_NAME_AW(StrCatBuff) + LPSTR WINAPI StrChrA(LPCSTR lpStart, WORD wMatch); LPWSTR WINAPI StrChrW(LPCWSTR lpStart, WCHAR wMatch); #define StrChr WINELIB_NAME_AW(StrChr) +LPSTR WINAPI StrChrIA(LPCSTR lpStart, WORD wMatch); +LPWSTR WINAPI StrChrIW(LPCWSTR lpStart, WCHAR wMatch); +#define StrChrI WINELIB_NAME_AW(StrChrI) + +INT WINAPI StrCmpNA(LPCSTR lpStr1, LPCSTR lpStr2, INT nChar); +INT WINAPI StrCmpNW(LPCWSTR lpStr1, LPCWSTR lpStr2, INT nChar); +#define StrCmpN WINELIB_NAME_AW(StrCmpN) + +INT WINAPI StrCmpNIA(LPCSTR lpStr1, LPCSTR lpStr2, INT nChar); +INT WINAPI StrCmpNIW(LPCWSTR lpStr1, LPCWSTR lpStr2, INT nChar); +#define StrCmpNI WINELIB_NAME_AW(StrCmpNI) + +LPSTR WINAPI StrDupA(LPCSTR lpSrc); +LPWSTR WINAPI StrDupW(LPCWSTR lpSrc); +#define StrDup WINELIB_NAME_AW(StrDup) + +HRESULT WINAPI StrRetToBufA(LPSTRRET src, LPITEMIDLIST pidl, LPSTR dest, + DWORD len); +HRESULT WINAPI StrRetToBufW(LPSTRRET src, LPITEMIDLIST pidl, LPWSTR dest, + DWORD len); +#define StrRetToBuf WINELIB_NAME_AW(StrRetToBuf) + void WINAPI PathRemoveBlanksA(LPSTR lpszPath); void WINAPI PathRemoveBlanksW(LPWSTR lpszPath); #define PathRemoveBlanks WINELIB_NAME_AW(PathRemoveBlanks) diff --git a/include/wine/undocshell.h b/include/wine/undocshell.h index 4ff7e9f72f3..5c07b4d9675 100644 --- a/include/wine/undocshell.h +++ b/include/wine/undocshell.h @@ -2,7 +2,6 @@ #define __WINE_UNDOCSHELL_H #include "windef.h" -//#include "shell.h" #include "commctrl.h" #include "wine/obj_shellfolder.h" #include "wine/obj_shellview.h" @@ -113,17 +112,6 @@ HRESULT WINAPI StrRetToStrNAW ( LPSTRRET src, LPITEMIDLIST pidl); -HRESULT WINAPI StrRetToBufA ( - LPSTRRET src, - LPITEMIDLIST pidl, - LPSTR dest, - DWORD len); - -HRESULT WINAPI StrRetToBufW ( - LPSTRRET src, - LPITEMIDLIST pidl, - LPWSTR dest, - DWORD len); /**************************************************************************** * SHChangeNotifyRegister API @@ -681,7 +669,7 @@ int WINAPI PathProcessCommand( void WINAPI PathStripPath(LPWSTR lpszPath); -BOOL WINAPI PathStripToRoot(LPWSTR lpszPath); +BOOL WINAPI PathStripToRootAW(LPVOID lpszPath); void WINAPI PathRemoveArgs(LPWSTR lpszPath);