博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DTK串口重定向(SOL)时中文显示问题解决方法
阅读量:6243 次
发布时间:2019-06-22

本文共 931 字,大约阅读时间需要 3 分钟。

近日有个需求,需要让Intel AMT在做串口重定向的时候能够很好的显示中文。我记得Intel AMT SOL本身应该是支持UTF-8编码格式,可以传输各种语言格式的字符,所立理论上来说,这个需求应该不是问题。拿最新版的Intel DTK(0.51x version)试了一下,用了一张Windows XP的安装光盘测试。打开DTK的Intel IAmtTerm后,首先需要设置终端仿真方式,如下图所示,修改为VT100/UTF-8,然后设置好相关IDER参数,选择重启动到IDER的光驱。
    iAMT机器通过IDER从中文版XP安装盘启动后,发现中文显示不正常,如下图所示。看起来好像时每个中文字符被截去了半边,并且挤在一堆,而里面的英文字符却都能显示正常。
 打开Intel AMT Terminal工程的源代码仔细检查后,发现了问题所在:IAmtTerm是这样显示字符的,一个方框一个方框的显示终端字符,方框的大小是根据用户选 择的字体大小来决定的,程序中是取样字符'A'的大小,然后决定字符框的大小,然后在显示的时候,把字符显示在对应位置相应大小的字符框中;很显然,问题 来了,我们知道中文的显示一般是需要占到两个英文字符大小宽度,所以上面出现的问题也就迎刃而解。 解决办法:在显示中文字符时候,把用来显示字符的方框变为原来的两倍大小即可;同时,为了达到和系统显示一样的效果,存储输出数据的数组中的所有中文字符 的下一个元素存储的值将会被抛弃,在存储的时候就需要间开。修改后的显示中文的效果如下图所示:
   这里是修改过的源代码,是Intel AMT Controls目录下的TerminalControl.cs,从这里下载 ,解压覆盖原来的就可。
    另外,如果你用SDK里面的Putty来做SOL显示的话,只需要设置将起设置中的Window-->Translation中的 "Received data assumed to be in which character set" 设置为 UTF-8 即可。
本文转自Intel_ISN 51CTO博客,原文链接:http://blog.51cto.com/intelisn/131461,如需转载请自行联系原作者
你可能感兴趣的文章
手动安装Jenkins插件
查看>>
共享主机
查看>>
阿里巴巴Dubbo实现的源码分析
查看>>
exe4j,
查看>>
Mysql查看执行计划
查看>>
SCDPM 2010系列之一——安装
查看>>
cocos2dx学习
查看>>
http加密访问应用
查看>>
vlayout
查看>>
必读 | 什么时候开始准备2019年下半年的考试?
查看>>
JDK安装说明
查看>>
iftop-流量监控安装(脚本)
查看>>
Windows Server2008通过命令行方式添加防火墙规则
查看>>
我的友情链接
查看>>
2013年十大IT趋势预测
查看>>
用PySpider搜集2017年高校招生章程
查看>>
centos知识点巩固
查看>>
如何用scapy针对无线网络
查看>>
使用BeanNameAutoProxyCreator实现方法日志代理
查看>>
我的友情链接
查看>>