KeyboardLayout=(Server Default) cannot take effect on Japanese Server OS VDA + English keyboard Client.
book
Article ID: CTX457841
calendar_today
Updated On:
Description
Use the following way to change the Keyboard Layout sync mode to Server Default.
Configure in StoreFront
File Path: C:\inetpub\wwwroot\Citrix\%StoreName%\App_Data\default.ica
Change setting in [WFClient]: KeyboardLayout=(Server Default)
Or configure in CWA for Windows
File path: %appdata%\ICAClient\APPSRV.INI
Change setting in [WFClient]: KeyboardLayout=(Server Default)
But it doesn't take effect when customer is accessing below environment:
VDA Server OS | VDA keyboard type | Client OS | Client keyboard type | KeyboardLayout=(Server Default) | Keyboard layout and IME in the ICA session |
Windows 2019 server | 106 Japanese | Windows 10 | 101 English | no working | English |
As the result, keyboard layout in the ICA session will be changed to 101 English keyboard instead of server side 106 Japanese keyboard.
The issue
ONLY happens with above Server & Client keyboard type combination.
The issue does
NOT happen on Desktop OS.
Resolution
This issue is a limitation of the current product design, please refer to the following information as workaround for this issue:
[Workaround]
1. Configure C:\inetpub\wwwroot\Citrix\%StoreName%\App_Data\default.ica on Storefront.
Or on the client-side open APPSRV.INI file from run by passing %appdata%\ICAClient\APPSRV.INI
2. Add KeyboardType=106 Keyboard (Japanese) under [WFClient]
Save it and Now start the session
3. Check 106 keyboard layout is working
Please also refer to: https://www.citrix.com/blogs/2020/04/22/citrix-virtual-apps-and-desktops-keyboard-and-ime-configurations/
Problem Cause
Server VDA always uses client parameter keyboardtype and keyboardsubtype no matter whether it is Server Default or User Profile.
Hence, the following parameters will be synced from client when ICA session is established on Server VDA even for KeyboardLayout is configured as (Server Default):
KeyboardType;
KeyboardSubType;
Since Japanese IME will query both KeyboardType and KeyboardSubType as well, client side English keyboard will be used instead of Server-side Japanese keyboard.
Additional Information
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-tsts/673d8ac0-f557-48cb-98a6-49925160d729?redirectedfrom=MSDN
The WINSTATIONCLIENT structure defines the client-requested configuration when connecting to a session.
Was this article helpful?
thumb_up
Yes
thumb_down
No