"Michael Günnewig" <[EMAIL PROTECTED]> wrote: > + LPWSTR szExt = strrchrW(szFile, L'.');
> +#define SLASH(w) ((w) == L'/' || (w) == L'\\') As were discussed many times using L prefix in order to create unicode chars/strings is wrong due to difference in size of unicode characters between windows and unix (2 vs. 4). We forced to create unicode strings explicitly: static const WCHAR fooW[] = { 'f','o','o',0 }; static const WCHAR dotW[] = { '.',0 }; static const WCHAR slashW[] = { '/',0 }; static const WCHAR bkslashW[] = { '\\',0 }; That's somewhat ugly and awkward, but it's really needed for portability. -- Dmitry.