Either go for everything in ASCII or unicode.

I would like to know what is the procedure you are building your application. Is it in unocde or normal ASCII. It looks like it is normal ASCII because you are using char and not WCHAR

What I meant is dont type cast to LPWCH but some its equivalent in ASCII and it should be some thing like LPCH but you should check out the MSDN or try using the WCHAR instead.

If you use WCHAR but then also compile in normal ASCII mode I would suggest you the T version. TCHAR which automatically maps to the correct version you are building your application.