原文出处:http://vdi.so/blog/?p=4360

这两天给某集团客户做了个XenApp 6.5的POC,发布到公网使用。

客户数据中心的带宽很给力,而且在没几个用户并发的情况下使用了一台双路E5620+20G内存的服务器。

在各种资源都很到位的情况下客户测的相当舒心,我也乐得轻松。

 

本以为这会是一次平淡无奇的测试,没想到还真能挖掘出一些问题:

今天接到客户电话,要求让用户访问虚拟应用时可以使用客户端本地的输入法。

想想这也没什么,很平常的需求;告知客户只需在客户端使用CMD定位到wfica32.exe程序,追加”/localime:on”参数,就能打开Citrix Receiver的本地输入法功能。

 

给客户写了个BAT脚本发了过去,告诉他双击运行就可以了,不出10分钟马上接到客户反馈:没用,生效的还是服务器输入法。

感觉非常奇怪,问了一下了解到客户测试的操作系统是Windows 7;马上打开虚拟机,起一台Win7的机器开始测!

装好Receiver,打开参数,运行虚拟应用,果然如客户所言:Ctrl+Shift快捷键切换的是服务器输入法,本地的输入法不生效。

 

接下来开始问题诊断。经过反复尝试,Ctrl+Shift只能切换服务器端输入法,但是发现使用Alt+Shift可以呼出本地输入法,而且生效。

根据这个情况,猜测可能是因为Ctrl+Shift组合键在服务器端的执行优先级比本地高。为了验证一下这个问题,登录到服务器桌面把服务器的Ctrl+Shit组合键关闭,做一下对比试验。

 

再次回到虚拟应用中,不出所料已经恢复正常了。

 

虽然问题解决了,但是Win7下调用本地输入法依然存在一些细小的问题。比如:

  • 看不到本地输入法状态条,而且候选词框会留在屏幕最左上角
  • 服务器输入法状态条偶尔会变成一个灰色的条,看不到应有的信息,如下图

 

以上问题经过测试,在XP下并不存在。因此建议如果客户的终端操作系统为Win7的情况下,尽量不要使用本地输入法的模式,还是老老实实地使用服务器输入法比较稳妥,客户感受也会比较好。