一朋友做的项目开头是Unicode字符集的后因某种原因转为MBS字符集了,结果在ListCtrl控件的头部显示出现了乱码!他自己排查了这个控件始终没有搞定,于是打电话请我帮忙处理一下。因为是自绘控件,我首先就让它这个控件要处于不在自绘状态下的会不会出现乱码!结果又正常没有乱码!那就只能是自绘的时候出了问题,我调试代码,发现DrawText这个函数字符串调试显示正常,就是无法正常显示在控件上,检查代码发现控件子类化后又设置了逻辑字体,把字符集设置出错了,见下句
lf.lfCharSet = HANGEUL_CHARSET;//这句不应该用这个字符集 而应该采用 ANSI_CHARSET ,调整代码后正常显示中文!