首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

unicode和多字节字符集的区别,该如何解决

2012-02-08 
unicode和多字节字符集的区别我用VC+ArcGIS10二次开发,在项目属性中,如果选择Unicode,程序没有问题。但是如

unicode和多字节字符集的区别
我用VC+ArcGIS10二次开发,在项目属性中,如果选择Unicode,程序没有问题。但是如果用多字节,开发以后,界面上菜单只要有中文的地方,都会是出现一连串的问号。????????

原始的问题,在下面的帖子里面有,错误的界面提示也有。
http://bbs.esrichina-bj.cn/ESRI/thread-97480-1-1.html

[解决办法]

读到多字节菜单字符串之后,用MultiByteToWideChar()转为unicode字符串

或者 使用API的A版本来设置菜单的显示名称,比如,SetMenuItemInfoA(...)

[解决办法]
如果你新的库是Unicode的,就用Unicode开发,摒弃多字节编码,多字节编码弊端太多了。
其实改起来很简单,你把所有的char都改成TCHAR,如果能用CString,尽量用CString。所有字符串函数都换上带_t的版本,比如_tsprintf()、_tcscpy之类的……因为这些东西都是同时兼容Unicode和ANSI的,所以改起来很容易。

热点排行