About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like
Users reported that logons failed after they had changed their password. After contacting the users we learned that this only happened with special characters in the password like ! and +.
After authentication the executable get’s the password from the Imprivata Appliance.
I decompiled the executable to source and read the line that passes the password to XenApp:
ControlSend("Citrix online plug-in", "", "[ID:1004]", $password)
I then checked the AutoIT documentation for the ControlSend function and learned there’s an extra parameter Flag with a default value of 0. This flags determines how keys are processed.
When Flag = 0 (default), special characters like + are used to indicate moving the cursor or indicate SHIFT. When Flag =1 the keys are send raw which is what we need for the passsword.
I changed the line to:
ControlSend("Citrix online plug-in", "", "[ID:1004]", $password, 1)
And now it works fine!
.NET .NET FrameWork Active Directory Altiris Apple Automation Manager Citrix Dell Delphi Excel Exchange Exchange2003 Exchange2010 Hack HP iOS Java LinkedIn Linux Lync MSI Office Office 2010 Passat Password PowerPoint PowerShell RES RNS510 SasLibEx SCOM Security Terminal Server ThinApp TSAdminEx VBS VCDS Visual Basic Visual Studio VMWare Volkswagen VW Windows PE Wordpress XenApp