【内容提要】虚拟应用环境中,由于客户端输入法与服务端应用程序可能安装在不同内码的系统上,以及形形色色的汉字输入软件和应用软件,汉字输入涉及简繁转换与内码转换、非标准编辑器等一系列问题。益和VA虚拟应用管理平台通过系统的兼容性设计和针对性的策略设置,很好的满足了适应性要求。
在虚拟应用模式中,使用客户端本地输入法无疑能够获得更好的用户体验。然而,由于汉字处理不仅有内码之间的转换,还较其他语言多了简繁之间的转换(如GB2312中只含有简体字,BIG5中只有繁体字,GBK、Unicode中又可同时包含简体和繁体字),需要解决服务端操作系统、应用程序、客户端操作系统、客户端不同输入法几者相互间差异带来的一系列问题,如显示错误、乱码甚至完全不能输入汉字。
例如这样一个应用环境:服务端操作系统为中文简体,应用程序是中文繁体版,同一个服务器集群内部分客户端习惯输入简体汉字,部分客户端操作系统是英文版,使用的汉字输入软件是BIG5码繁体中文。可想而知,这样不仅要进行简繁体的转换,要进行内码转换,还要有针对性的客户端设置。
另外,服务端发布的某些应用,由于程序中使用了特殊的编辑器和程序处理功能,汉字输入时也带来种种问题。例如:应用软件中使用了单字节英文编辑器,同时有”随动”功能,输入的同时伴随着耗时的数据查询,就会出现”半个汉字”触发查询的现象,影响正常操作。
为解决这类问题,益和VA虚拟应用管理平台设计了相应的系列解决方案,通过服务端的处理策略配合客户端的设置很好地满足了适应性要求,包括各种复杂组合的要求。服务端通过一组”特殊的编辑器类名”参数(策略代码),配合客户端”本地输入法编码”设置作为适合不同环境状况的策略选择。
简繁体适配及内码转换策略:
缺省状态下,服务端无参数设置,客户端使用本地输入法、编码为”自动”,VA服务端根据Windows的语言-键盘-输入法设置、应用接收窗口是否接收Unicode字符等环境条件综合判断,自动进行进行汉字内码转换和简繁转换。
但是对于一些特殊情形,特别是存在未知条件的情况下,不能满足所有的要求,必须根据实际情况设置针对性策略。
1. 强制繁体输入(策略代码FF)
强制输出至目标编辑器中的汉字为繁体。如果客户端输入法是简体,则自动转换为繁体,包括必要时的内码转换(GBK转BIG5):
下面的实例中,客户端为中文简体系统(左边窗口是本地记事本),服务器为中文繁体系统(右边窗口是虚拟服务器记事本)。在客户端输入的简体字不能正常显示,设置该参数后将输入转为繁体。
2. 强制简体输入(策略代码FJ)
强制输出至目标编辑器中的汉字为简体。如果客户端输入法是繁体,则自动转换为简体,包括必要时的内码转换(BIG5转GBK):
下面的实例中,客户端为中文繁体系统(左边窗口是本地记事本),服务器为中文简体系统(右边窗口是虚拟服务器记事本)。在客户端输入的繁体字不能正常显示,设置该参数后可输入转为简体。
3. 客户端汉字输入设置
上述服务端设置面对所有集群用户,客户端设置仅对该用户有效,更加方便管理和满足个性需要。客户端可选择使用服务器的输入法或者本地输入法。使用本地输入法可以对汉字简繁和编码进行选择。
自动:服务端自动处理。
GB/GBK:当客户端输入为繁体时转换为简体(GB/GBK码)。
BIG5:客户端输入为简体时,转换为繁体(BIG5/GBK码)。
特殊编辑器输入策略:
信息(消息)发送方式(策略代码F0)
将客户端的内容以信息的形式发送至服务端,并输出字符将内容输入至程序中。即SendMessage (WM_CHAR) 方式,适用于目前大部分软件程序、特别是Windows 2000或WinXP兼容软件,是现在的VA默认方式。
剪切粘贴方式(策略代码F1)
将客户端输入的内容以剪切和粘贴的方式输入到服务端的程序中,适合一些不符合Windows标准的特殊编辑器、不对汉字进行识别的西文编辑器。只要输入编辑器类名,VA便会以这种方式对其输入汉字内容。
模拟键盘方式(策略代码F2)
将客户端的内容以模拟键盘的方式输入Unicode到服务端的目标编辑器中。此方式将会是VA未来的默认方式。
附:“特殊的编辑器类名”参数设置方法
”特殊的编辑器类名”参数设置在VA控制台的高级参数页面上:
点击输入框右边的小按钮:
类似richwein20w这样的特殊编辑器类名,可以根据发布的应用软件设置多个;策略参数F0、F1、F2可根据需要设置F1或F2。如果设置为F1,则不必再逐个设置richwein20w这样的特殊编辑器类名。
简繁转换参数根据需要可在FF或FJ选择设置其中一个