关于 WideCharToMultiByte 函数的使用有关问题,求解决!

关于 WideCharToMultiByte 函数的使用问题,急求解决!!!
在VC6.0的MFC工程中使用WideCharToMultiByte我是这么写的:

TCHAR szTempInfo[400] = {0};
if (ititle< 400)
{
//歌曲标题
  ReadFile(hFile, szTempInfo,ititle, &dwBytesRead, NULL);
  WideCharToMultiByte(CP_OEMCP,NULL,szTempInfo,-1,pBuf->Title,ititle,NULL,FALSE);
}

出现如下错误 error C2664: 'WideCharToMultiByte' : cannot convert parameter 3 from 'char [400]' to 'const unsigned short *'
该如何解决??

------解决方案--------------------
C/C++ code

WCHAR szTempInfo[400] = {0};

------解决方案--------------------
TCHAR是根据_UNICODE这个宏的定义与否来决定类型的,定了了,则是wchar_t,没定义,则是char

看楼主这种情况是工程选项里使用的非unicode编码吧,所以把TCHAR解释成了char了,而那个函数第三个参数又必须是宽字符,所以

把TACHAR改为

wachar_t szTempInfo[400] = {0};即可
------解决方案--------------------
在工程->设置里->c/c++,与处理程序定义,把_MBCS改成-UNICODE,因为wma文件是unicode组成的