还是显示乱码的问题
上次我问过英文操作系统显示中文乱码问题,本来以为是字体的原因,现在估计不是了.
我做了个测试mfc程序,单文档结构,使用了CEditView类
编译选项是选unicode
char * pT = "(文字内容)";
wchar * wideT = L"(文字内容)";
放到英文系统下的测试结果如下:
pView->GetEditCtrl().SetWindowText(wideT); //正常显示
USES_CONVERSION ;
pView->GetEditCtrl().SetWindowText(A2W(pT)); //乱码
wchar_t szWide[2048];
long lLen = MultiByteToWideChar(CP_ACP,0,pT,strlen(pT),szWide,sizeof(szWide));
szWideProgID[lLen] = '\0';
pView->SetWindowText(szWide); //还是乱码
pView->GetEditCtrl().SetWindowText(CString(pT)); //乱码
pView->GetEditCtrl().SetWindowText(_bstr_(pT)); //乱码
这些测试在中文系统全部是正常的.
在英文系统中除了定义的 wchar * wideT 常量外,其它全部是乱码.
各位给些建议吧