Jabea.net Rotating Header Image

The saga of the Bad Keyboard Layout (XenDesktop 5+ + DesktopAppliance) (CTX coming for that bug)

Hi everyone

Today I will post about a big bug. Seem a easy’s one, but it took 2 Tier 3 support technician from Citrix and 1 dev from Citrix to get a workaround :-) (Not to forget the support case with Wyse !)

I got a workaround, no fix !

WHAT WAS WORKING:

In XenDesktop 4 with a Desktop Appliance the Keyboard Layout in the Virtual Desktop is handled as (Server Default)’s always.

The setup;
- The user profile, with Citrix UPM (like a roaming profile) is configured with a French Canada’s profile.
- The default’s one in the Preload’s section is configured with French Canada too.
- The Wyse/Desktop Appliance/Endpoint Device with a Citrix Receiver got configured with any Keyboard Layout.

So the client connect from anywhere in the world, and the keyboard layout in it’s Virtual Desktop is the one from it’s profile.

BUG:

If you update the Virtual Desktop to install the Citrix VDA’s Agent and Core Service to version 5 and more, it now do a keyboard importation from the device.

Seem a easy’s one you will told me, but what if Wyse didn’t coded the right Keyboard Layout for like French Canada ?

Bug like that appear;

Untitled3

 

So you clearly see the bug, the French (Canada) got bypassed by that “Canadian Multilingual Standard”. So you will tell me, wait, you did put that setting in the Wyse, but no !

Untitled5

WORKAROUND…

The one I did myselft before contacting the support…;

A script in the start-up menu in the All Users: (I call the .bat that way to hide the windows)

Set oWshShell = CreateObject(“WScript.Shell”)
oWshShell.Run “c:\Import.bat”, 0, True

Import.bat:

reg import c:\kb.reg
rundll32.exe shell32,Control_RunDLL intl.cpl,,/f:”c:\kb.txt”

-There the first line do import the correct Preload key
-Now the second line simulate a click in the control panel to change the setting

kb.reg:

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\Keyboard Layout\IMEtoggle] [-HKEY_CURRENT_USER\Keyboard Layout\Preload] [-HKEY_CURRENT_USER\Keyboard Layout\Substitutes] [-HKEY_CURRENT_USER\Keyboard Layout\Toggle]

[HKEY_CURRENT_USER\Keyboard Layout]

[HKEY_CURRENT_USER\Keyboard Layout\IMEtoggle]

[HKEY_CURRENT_USER\Keyboard Layout\IMEtoggle\scancode]

[HKEY_CURRENT_USER\Keyboard Layout\Preload] “1″=”00001009″

[HKEY_CURRENT_USER\Keyboard Layout\Substitutes]

[HKEY_CURRENT_USER\Keyboard Layout\Toggle] “Hotkey”=”3″ “Language Hotkey”=”3″ “Layout Hotkey”=”3″

[HKEY_CURRENT_USER\Control Panel\Desktop] “MultiUILangageId”=”00001009″

kb.txt:

[RegionalSettings]
LanguageGroup=1
InputLocale = 0c0c:00001009

OK, BUG#2 after that.  Because, if my workaround would had work at 100% I would had not call the support…

In the initial login the script work and that all ok, the users see nothing wrong. The bug come after a period, the VDA’s agent seem to refresh it’s settings.

So in the day, usually 3-4 hours after the bad keyboard come out again. The bug appear less, because some users works in TS session like from XenApp, so their keyboard is ok. Some users see the bug when they try to edit some local text or in some local app.

WORKAROUND #2

You erase the wrong keyboard layout folder from there;

HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\CONTROL\KEYBOARD LAYOUTS

Seem to work, but WAIT, in the refresh period the bad keyboard layout come back agains ! ark.

So, in the final the correct workaround is to set the correct ACL for the folder, only domain admin read, every other including SYSTEM with DENY’s flag. (so you does not erase it)

Thanks everyone, I hope it will help other.

As clearly we CAN’T stop that importation with the new VDA,s agent 5 and more and that leave the Virtual Desktop easy to break by Receiver or Appliance that does not follow the correct key to use.

SR_BACKEND_FAILURE_164: Failed to connect to Equallogic Array;maximum SSH CLI sessions reached

ssh_cli

If you got that error it mean one thing, your SAN Equalogic got a too recent firmware for your Citrix XenServer 5.5. The XenServer take all SSH’s session and does not free them, so if HA is enable the VM will sometime load up, could be right now, in 15 minutes or in 1 hour. If HA is not there, then you will have to retry manually.

Firmware 5 > cause that error. Only workaroung is to cron a script like that in your hypervisor.

 

#!/bin/sh

ps -u root -f | grep “ssh
grpadmin@GroupIPAddress” | while read psline;
do
pid=`echo $psline | awk ‘{print $2}’`
ppid=`echo $psline |
awk ‘{print $3}’`

if test $ppid -eq ’1′ ; then

kill $pid
fi

done

 

If HA is there, that will leave you error like that;

Untitled

Be aware that it cause too bug in the % of space reported from the SAN. As it report it in GB, but the XenServer expect MB.

 

Upgrading to 5.6 > is the only solution !

Error loading profile when user password expire. (XP SP3 with roaming profile/Citrix UPM)

Hello everyone,

Ever got a problem that when the user password expire in active directory that the roaming profile does not load ?

ExpiringPassword

 

Client OS: XP SP3

Microsoft released a private KB for that, following the blog post there; MS Hotfix for XP SP3 resolves the Citrix profile not loading when a user changes their password during logon

BUT, what my surprise if you use a product like Citrix User Profile Management, that does not work like it’s supposed to do.

 

Than in my research, I found that; CTX129128 – A New Local Profile is Created for a User if Must Change Password at Next Logon
Property is Enabled for Active Directory User

CTX129128-1

 

So yes the KB work, but because the Citrix UPM does not load enougth fast a local profile is laoded anyway.

 

 

 

 

With all my test done, both setting just work perfectly, so enjoy that small tip !

 

Exchange 2013

Hi everyone. Today I’am testing my tool against Exchange 2013.

Good news, as far it work goood !

 

New build of xchbckup (0.03.2)

Hi everyone, Soon I will be able to post the alpha code online. The new build now have a webbased GUI ! For user restoration too. So all webhost ! :)

The hypervisor was not contactable at the supplied address

On Citrix Desktop Delivery Controller, an annoyance if you don’t replace the default certificate with a thrusted’s one on your XenServer(s). For lab I suggest to keep using HTTP over HTTPS and if the custumer don’t want to buy certificate too.

Try that if you got HTTPS and a unthrusted certificate:

But a big sidenote of that documentation it’s that you have to re-install the certificate from time to time, the certificate even if installed you loose the connection to the XenServer from the DDC… so you re-import it in the correct store, and voila it work again… (btw, bug not present in XenDesktop 4, only 5)

To install a certificate on the server running Desktop Delivery Controller
1. Locate the root certificate file in Windows Explorer.
2. Right-click the root certificate file and select Install Certificate. The Certificate Manager Install Wizard appears.
3. On the Welcome page, click Next.
4. On the Certificate Store page, select Place all certificates in the following store.
5. Click Browse.
6. Select Show physical stores.
7. Select Local Computer.
8. Click OK.
9. Follow the instructions in the wizard to complete the install.

Quoted from there

There is a link for vCenter, to force HTTP and not HTTPS [+]

ps, I wonder if you can import a certificate with a .cmd (to make a scheduled task), something I got to look for

Wyse Xenith FTP bug from old firmware.. (post 1.5.xx)

By default, I had to make that struct in my ftproot

wnos\

after the firmware upgrade, then it check there;

Wyse\wnos\

Like it’s supposed to be !

File in there for reference;
C00_xen
C00_xen_1_5
xen.ini

xen.ini:
autoload=2

VNCPrompt=No
VncPassword=xxxxxxxxxxxx

TimeZone='GMT - 05:00' ManualOverride=yes Daylight=yes Start=030507 End=100507 TimeZoneName="Eastern Standard Time" DayLightName="Eastern Daylight Time"
TimeServer=COSTCO_DC TimeFormat="12-hour format" DateFormat=mm/dd/yyyy GetBiosDT=Yes

domainlist=COSTCO
pnliteserver=http://x.x.x.x/citrix/desktopfull/config.xml

SysMode=vdi toolbardisable=yes

; Device=keyboard numlockoff=no
Resolution=1024x768

LowBand=yes
Locale=French
Language=fr_ca
MouseSpeed=0

SessionConfig=ALL MapDisks=yes

;; disable session reliability and keep map disk for USB Drives
SessionConfig=ICA \
SessionReliability=no \
mapdisksunderz=yes \
ProgressiveDisplay=yes

Messaging between Desktop in XenDesktop

Just found a good app for XenDesktop,

pandion, it’s small and provide functionnality like MSN to the users.

Registry:
The Pandion application does not require registry entries to function. However the Windows Installer does create a registry entry for each shortcut. These entries have no other purpose and are an artefact of the Windows Installer specification. Their value does not affect the shortcuts. The keys are created in HKEY_CURRENT_USER

So, the UPM manage user setting, and in the install you can simply point it to the %homedrive% of the user like that;

msiexec.exe /i \\x.x.x.x\\pandion\pandion_setup.msi ALLUSERS=0 LAUNCHAPP=yes DESTINATION="U:\pandion\"

Unknown publisher.. small annoyance

Small annoyance for application that run from a network share.

Small GPO to resolve..;

Go to User Configuration >> Administrative Templates >> Windows Components >> Attachment
Manager

Add “*.exe” to the “Inclusion list for moderate risk file types” setting.

Best Practices for Configuring Provisioning Server on a Network

Here’s a good citrix eDoc for the PVS for XenDesktop VM.

CTX117374

This article explains the best practices when configuring Citrix Provisioning Server on a network. Follow these best practices when troubleshooting issues such as slow performance, image build failures, lost connections to the streaming server, or excessive retries from the target device.