APP下载

国标字体引发打印乱码

2018-03-04

网络安全和信息化 2018年8期
关键词:乱码终端用户办公自动化

系统环境

笔者单位使用的办公自动化系统,基于传统三层架构开发,即数据库层、业务层和界面层,其中数据库为Oracle,界面层为浏览器。办公自动化系统界面比较友好,打开公文条目时,标签显示办文处理表和公文正文。办公自动化系统客户端电脑需要安装IE浏览器、Office套件和Office浏览器插件才能正常使用。这种浏览器插件嵌入显示公文方式,减少了用户鼠标操作次数,一次点击全部显示,非常方便。

但是,它的缺点也显而易见,加载公文显示速度略慢,插件常被各类杀毒软件和安全卫士删除,导致公文不能正常显示,维护工作量巨大。因此,稳定的IE浏览器环境,对办公自动化系统的正常使用至关重要。

经过研究和探讨,使用RemoteApp可以避开客户端多样化的浏览器应用,为用户提供集成、统一、安全和稳定的IE浏览器环境,可以减少客户端故障。为此,笔者在VMWare Workstation虚拟机部署了Windows Server 2008 R2标准版服务器,展开一系列测试。

首先安装了Office套件,配置好办公自动化系统所需的浏览器工作环境。接着,添加、激活的远程桌面服务。最后,通过RemoteApp发布IE浏览器,并生成了MSI终端安装程序包。由于公文格式的比较特殊,规定使用小标宋和仿宋(实际大量应用仿宋-GB2312)等字体,因此在服务器端也安装了GB2312国标字体。

故障现象

服务器部署完毕后,在终端用户电脑安装RemoteApp发布的IE浏览器程序包。运行远程IE浏览器,通过安全认证,办公自动化系统正常访问,公文显示正常。困扰多时的办公自动化系统客户端问题终于解决了,此时心里美滋滋的。当测试打印重定向功能时,瞬间崩溃,打印出来的公文标题正常,正文乱码。是什么导致打印乱码呢?

什么是RemoteApp?

RemoteApp是Windows Server 2008远程桌面服务特色功能之一,使用RDP协议,允许终端用户通过远程桌面服务访问远程应用,这些远程应用就像在终端用户本地电脑上运行一样。经远程服务器RemoteApp发布的程序,我们称之为RemoteApp程序。使用这些RemoteApp程序时,用户无需登录远程桌面服务器,它们也不在远程桌面服务器显示,而是和终端用户的桌面合为一体,以独立窗口形式存在。

RemoteApp是Windows传统终端服务升级扩展而来的。终端服务可以理解为远程桌面,它以整个桌面为单位发布出来,终端用户登录发布出来的远程桌面后,再使用各类远程应用或操控远程资源。而RemoteApp与终端服务的整体桌面发布不同,它对应用做精细化管理,按需逐一发布,并可生成MSI安装包,供终端用户安装使用。RemoteApp也提供了资源重定向功能,方便终端用户调用本地磁盘、打印机和各类接口设备等资源。终端服务打印重定向需要在服务器端安装打印机驱动程序,如果多用户多品牌多型号打印机,打印机驱动程序安装一个也不能少,相对繁琐;而RemoteApp令人耳目一新,无需安装打印机驱动程序,自动重定向终端用户打印机。

故障排查

1.虚拟机问题

由于测试系统安装在VMWare Workstation 12 Pro上,重新启动Windows系统,乱码问题可能会得到解决。就在系统重启之际,虚拟机右下角一闪而过一行提示:“在该系统上全局禁用了虚拟打印功能,不会为该虚拟机启用此功能”。难道这会导致打印乱码?是不是启用该功能就可以正常打印?在VMWare“编辑”菜单打开“首选项”,选择“设备”,勾选“启用虚拟打印机”,重新启动系统,马上试用RemoteApp打印功能,结果乱码依旧。

是不是虚拟机不支持导致乱码?物理服务器安装Windows Server 2008 R2,也许问题会得到解决。好不容易腾出一台服务器,安装Windows Server 2008 R2,部署其他软件和配置 RemoteApp后,打印还是乱码。

2.打印机问题

既然不是虚拟机造成打印乱码,那会不会是打印机造成的呢?在重新安装Lenovo M7650DNF驱 动程序后,又将打印机更换为HP LaserJet Professional P1606dn,乱码情况还是没有改观。

3.系统.NET问题

笔者通过搜索引擎和论坛发帖求助方式,最后在某论坛搜索到一则“葵花宝典”:终端客户机安装 .NET 3.0 +.NET 3.0 SP1后,重启客户机就可以正常重定向本地打印机了。于是安装了整套.NET后,重启电脑,奇迹还是没有发生。

故障解决

经过前面多次失败后,笔者重新整理思路,回到打印乱码的公文文档上来。既然该公文标题可以顺利打印,说明RemoteApp打印重定向运行正常。经过详细分析,发现该公文标题字体是小标宋,正文字体是仿宋-GB2312,也许是不同字体差异造成乱码情况发生。一番测试发现,仿宋-GB2312字体打印乱码,楷体-GB2312字体打印也是乱码,只要选用国标字体,RemoteApp打印都会乱码,应该是国标字体与RemoteApp兼容性问题造成。果断删除服务器端已安装的所有国标字体,RemoteApp打印不再乱码,办公自动化系统客户端问题得到彻底解决。

猜你喜欢

乱码终端用户办公自动化
对症下药解决多种乱码难题
这些真的不是乱码,是汉字
浅谈办公自动化系统的设计与应用
蜂窝网络终端直通通信功率控制研究
办公自动化系统软件教学探索
办公室自动化、办公自动化与OA
组播环境下IPTV快速频道切换方法
炫迈:用神奇乱码勾引你视线
沪苏浙高速公路办公自动化系统设计
jsp中文编码乱码的分析与解决