Quote:
I think wchar_t is necessary only when its an unicode string, but ASCII strings have char*.


Yes, and if I undesrtood Dark_Samurai's problem right, then trying to use char with the STRINGs that now support unicode returns gibberish. That sounds to me like the strings are now always in Unicode and the chars now contain the bytes which are actually pairs in Unicode. That's why I think the problem can be solved with wchar_t.