Terminal Server & XenApp Tuning Tips

23 May, 2009 (78828 reads)

 

Working in SBC environments for some years now I've used some best practices documents like the well known Methodology In a Box (MIAB) from Rick Delingher.
These documents, although really pertinent, are now quite outdated and do not include the latest OS and XenApp releases.
The purpose of this article is an attempt to summarize all Tuning Tips I've found (and also that I'm using) and describe the target operating system / XenApp version(s) they're working for.
Do not hesitate to give us your comments for this Article to be updated with your experience and feedback.
Please note that these informations are provided "as is" and that using these tips is at your own risks.
Please also Note that all REG_DWORD values are provided in decimal format.
All Registry Hives are provided for x86 platforms. For x64 Platforms, do not forget to add "WoW6432Node" if hive is in HKLMSoftware.
 
Operating System Tuning for XenApp / Terminal Services
 
&l;td style="padding: 0.75pt; border: #f0f0f0; background-color: transparent;">
Server Service Optimization
Registry Hive
Value
Type
Data
Purpose(s)
Platform(s)
HKLMSYSTEMCurrentControlSetServicesTcpipparameters
 DisableDHCPMediaSense
 REG_DWORD
 1
Disables Windows AutoSense
 W2K / W2K3 / W2K8 
HKLMSYSTEMCurrentControlSetServicesTcpipparameters
 KeepAliveTime
 REG_DWORD
 60000
Determines how often TCP sends keep-alive transmissions
 W2K / W2K3 / W2K8 
HKLMSYSTEMCurrentControlSetServicesTcpipparameters
 KeepAliveInterval
 REG_DWORD
 100
Determines how often TCP repeats keep-alive transmissions when no response is received
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesTcpipparameters
 TcpMaxDataRetransmissions
 REG_DWORD
 10
Determines how many times TCP retransmits an unacknowledged data segment on an existing connection
 W2K / W2K3 / W2K8
HKLMSOFTWAREmicrosoftWindows NTCurrentVersionWinlogon
 WaitForNetwork
 REG_DWORD
 1
Enables Netlogon to wait for the Network to be active
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionAeDebug
 Debugger
 REG_SZ
 Nothing ("")
Disables Dr Watson
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServiceswuauserv
 Start
 REG_DWORD
 4
Disables Windows Update Service
 W2K / W2K3 / W2K8
HKLMSoftwareMicrosoftWindowsCurrentVersionExplorerVisualEffects
 VisualFXSetting
 REG_DWORD
 2
Sets Visual effects to "Optimize for Best Performances"
 W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlPrintProviders
 EventLog
 REG_DWORD
 0
Disables Logging of Print Events
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesSpooler
 ErrorControl
 REG_DWORD
 2
Disable Spooler errors from being displayed on the server console
 W2K / W2K3 / W2K8
HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem
 DontDisplayLastUserName
 REG_DWORD
 1
Removes Display of Last Username
 W2K / W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon
 DeleteRoamingCache
 REG_DWORD
 1
Deletes the Roaming Profiles cache after Logoff
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlWindows
 ErrorMode
 REG_DWORD
 2
Disables Console error Messages
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogApplication
 MaxSize
 REG_DWORD
 2097152
Sets Application Event's Log maximum size to 2048
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogApplication
 Retention
 REG_DWORD
 0
Sets Circular Events logging
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogSecurity
 MaxSize
 REG_DWORD
  2097152
Sets Security Event's Log maximum size to 2048
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogSecurity
 Retention
 REG_DWORD
 0
Sets Circular Events logging
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogSystem
 MaxSize
 REG_DWORD
  2097152
Sets System Event's Log maximum size to 2048
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesEventLogSystem
 Retention
 REG_DWORD
 0
Sets Circular Events logging
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp
 fDisableCpm
 REG_DWORD
 1
Disables Terminal Server Client Printers Mapping. This ensures that admin won't upload print drivers when connecting to any server for Administration purposes
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesCiSvc
 Start
 REG_DWORD
 4
Disables the Indexing Service
 W2K / W2K3 
HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon
 BufferPolicyReads
 REG_DWORD
 1
Optimizes GPO Execution when Opportunistic Locks are Disabled
 W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal Server
 IdleWinStationPoolCount
 REG_DWORD
 4
Raises the Number of ICA / RDP Listeners
 W2K
HKLMSystemCurrentControlSetControlKeyboard Layout
 IgnoreRemoteKeyboardLayout
 REG_DWORD
 0
Disabled the Ignore of remote keyboards layouts
 W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlFileSystem
 NtfsDisableLastAccessUpdate
 REG_DWORD
 1
Sets NTFS not to update the last-access timestamp on each directory when it lists the directories on an NTFS volume
 W2K / W2K3 / W2K8
 HKLMSYSTEMCurrentControlSetControlPriorityControl
 Win32PrioritySeparation
 REG_DWORD
 38
Foreground application more reponsive than background
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlSession ManagerMemory Management
 LargeSystemCache
 REG_DWORD
 1
Provides a large virtual address space for the cache.
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlSession ManagerMemory Management
 IoPageLockLimit
 REG_DWORD
 65536
Specifies the maximum number of bytes that can be locked for I/O operations
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlSession ManagerMemory Management
 DisablePagingExecutive
 REG_DWORD
 1
Drivers and the kernel must remain in physical memory
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 AutoEndTasks
 REG_SZ
 1
Determines whether user processes end automatically when the user either logs off.
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 WaitToKillAppTimeout
 REG_SZ
 20000
Determines how long the system waits for user processes to end after the user attempts to log off
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 MenuShowDelay
 REG_SZ
 10
Changes the Start menu display interval
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 CursorBlinkRate
 REG_SZ
 -1
Specifies how much time elapses between each blink of the selection cursor
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 DisableCursorBlink
 REG_DWORD
 1
Enables / Disables Cursor BLink
 W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 DragFullWindows
 REG_SZ
 0
Specifies what appears on the screen while a user drags a window / Only the outline of the window moves
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 SmoothScroll
 REG_DWORD
 0
Scrolls using smooth scrolling
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 Wallpaper
 REG_SZ
 (none)
Sets Wallpaper to "None"
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktopWindowsMetrics
 MinAnimate
 REG_SZ
 0
Disabled. Window does not animate while being resized
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpUserOverrideControl PanelDesktop
 InteractiveDelay
 REG_DWORD
 40
Optimizes Explorer and Start Menu responses Times
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanServerParameters
 MaxWorkItems
 REG_DWORD
 512
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanServerParameters
 MaxMpxCt
 REG_DWORD
 2048
Server Service Optimization 
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanServerParameters
 MaxFreeConnections
 REG_DWORD
 100
Server Service Optimization
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanServerParameters
 MinFreeConnections
 REG_DWORD
 32
Server Service Optimization
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanWorkstationParameters
 MaxCmds
 REG_DWORD
 2048
Increases Network capacity
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanWorkstationParameters
 UtilizeNTCaching
 REG_DWORD
 0
Disable Caching
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetServicesLanmanWorkstationParameters
 MaxThreads
 REG_DWORD
 17
Maximum Concurrent Threads
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesMRXSmbParameters
 OplocksDisabled
 REG_DWORD
 1
Disables Opportunistic Locking
 W2K / W2K3 / W2K8
HLMSYSTEMCurrentControlSetServicesLanmanworkstationParameters
 UseOpportunisticLocking
 REG_DWORD
 0
Disables Opportunistic Locking 
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesLanmanserverParameters
 EnableOplocks
 REG_DWORD
 0
Disables Opportunistic Locking  
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServiceslanmanserverParameters
 Size
 REG_DWORD
 3
Optimizes Network Performances for Applications (Along with LargeSystemCache)
 W2K / W2K3 / W2K8
HKLMSystemCurrentControlSetControlSession Manager
 RegistryLazyFlushInterval
 REG_DWORD
 30
Registry Flush Interval
 W2K / W2K3 / W2K8
HKLMSOFTWAREMicrosoftActive SetupInstalled Components{44BBA840-CC51-11CF-AAFA-00AA00B6015C}
 StubPath
 REG_SZ
 ""
Disable Outlook Express Icon Creation
 W2K / W2K3
HKLMSOFTWAREMicrosoftActive SetupInstalled Components{7790769C-0471-11d2-AF11-00C04FA35D02}
 StubPath
  REG_SZ
 ""
Disable Windows Address Book Icon Creation
 W2K / W2K3
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon
 DefaultDomainName
 REG_SZ
 YourDefaultDomain
Sets Default Logon Domain
&ZZZnbsp;W2K / W2K3 / W2K8
HKLMSOFTWAREPoliciesMicrosoftWindows NTTerminal Services
 WFDontAppendUserNameToProfile
 REG_DWORD
 1
Allow Mandatory Profiles Configuration via GPO.  This Setting needs KB908011 or W2K3 SP2 to be installed on each Server
 W2K3
HKLMSOFTWAREPoliciesMicrosoftInternet ExplorerRestrictions
 RestGoMenu
 REG_DWORD
 1
Disable 'Mail and News' Menu from Internet Explorer
 W2K / W2K3 / W2K8
HKLMSYSTEMCurrentControlSetServicesBNNSParameters
 EnableOffload
 REG_DWORD
 0
Recommend Performance Best Practice when Your XenApp Servers are Deployed via Provisioning Server
 
Along with these registry settings, do not forget to install UPHClean (W2K / W2K3) to manage profiles at logoff and ensure no lock will remain leading to profiles corruption and long logoff times.
UPHClean is natively embedded into Windows 2008 and later (User Profile Service).
 Also, as a Best Practice, it is recommended to Disable Data Execution Prevention on Windows 2003 and Windows 2008.
To do so, you have to modify the boot.ini file or use one of the following command line(s)
  • For Windows 2003 : bootcfg.exe /raw /fastdetect /noexecute=AlwaysOff /ID 1
  • For Windows 2008 : bcdedit.exe /set {current} nx AlwaysOff
 
 
Additional Windows Explorer Tuning
 
The following Tuning Values are an extract from an Helge Klein blog post and were added on June, 1rst 2009 (Thanks to Laurent Falguiere for pointing these settings in his comment)
Warning : UseDesktopIniCache can generate a Delayed browsing (5 sec) with redirected My Documents on Windows Server 2003 in some circumstances as stated in Ingmar Verheij article so as usual be careful when using tweakings !
Registry Hive
Value
Type
Data
Purpose(s)
Platform(s)
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 UseDesktopIniCache
 REG_DWORD
 1
http://support.microsoft.com/kb/840309/EN-US
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 NoRemoteRecursiveEvents
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B330929&x=9&y=10
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 NoRemoteChangeNotify
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B812669&x=14&y=12
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 StartRunNoHOMEPATH
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B264061&x=18&y=9
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 NoRecentDocsNetHood
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B264061&x=18&y=9
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
 NoDetailsThumbnailOnNetwork
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B830903&x=17&y=18
 W2K3 / W2K8
HKLMSystemCurrentControlSetServicesMRXSmbParameters
 InfoCacheLevel
 REG_DWORD
 16
http://support.microsoft.com/kb/834350/EN-US
 W2K3 / W2K8
HKCR*shellexPropertySheetHandlersCryptoSignMenu
 SuppressionPolicy
 REG_DWORD
 65536
http://support.microsoft.com/kb/829700/EN-US
 W2K3 / W2K8
HKCR*shellexPropertySheetHandlers{3EA48300-8CF6-101B-84FB-666CCB9BCD32}
 SuppressionPolicy
 REG_DWORD
 65536
http://support.microsoft.com/kb/829700/EN-US
 W2K3 / W2K8
HKCR*shellexPropertySheetHandlers{883373C3-BF89-11D1-BE35-080036B11A03}
 SuppressionPolicy
 REG_DWORD
 65536
http://support.microsoft.com/kb/829700/EN-US
 W2K3 / W2K8
HKLMSOFTWAREMicrosoftWindowsCurrentVersionexplorerSCAPI
 Flags
 REG_DWORD
 1051650
http://support.microsoft.com/kb/829700/EN-US
 W2K3 / W2K8
HKLMSYSTEMCurrentControlSetControlSession Manager
 SafeDllSearchMode
 REG_DWORD
 1
http://support.microsoft.com/kb/306850/EN-US
 W2K
HKLMSYSTEMCurrentControlSetControlSession Manager
 SafeProcessSearchMode
 REG_DWORD
 1
http://support.microsoft.com/?scid=kb%3Ben-us%3B905890&x=13&y=9
 W2K3 / W2K8
 
 
XenApp Tuning
 
Registry Hive
Value
Type
Data
Purpose(s)
Platform(s)
HKLMSoftwareCitrixPrint
 DefaultPrnFlags
 REG_DWORD
 134217728
Disables Logging of Print Events
 XenApp 4.X / 5.X
HKLMSoftwareCitrixPrint
 DefaultPrnFlags
 REG_DWORD
 536870912
Ensures Autocreated printers ACL are always enforced
 XenApp 4.X / 5.X 
HKLMSoftwareCitrixIMALMS
 EnableTranslation
 REG_DWORD
 1
Ensures IMA LMS will work on MUI Operating Systems
 XenApp 4.0
HKLMSYSTEMCurrentControlSetControlCitrixwfshellTWI
 LangBarDeminimizerFlags
 REG_DWORD
 1
Hides the Language bar if it is not needed
 XenApp 4.X / 5.X 
HKLMSYSTEMCurrentControlSetControlCitrixwfshellTWI
 SeamlessFlags
 REG_DWORD
 524288
Won't Sync the WorkArea within Seamless Application : Application's Title Bar will be "normal" when accessed from clients using the Windows XP / Vista Themes 
 XenApp 4.X / 5.X 
HKLMSYSTEMCurrentControlSetControlCitrixwfshellTWI
 LogoffCheckSysModules
 REG_SZ
 wistpis.exe
Specified modules will be forced to unload when the published application will be exited
 XenApp 4.X / 5.X 
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 AutoEndTasks
 REG_SZ
 1
 Determines whether user processes end automatically when the user either logs off.
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 WaitToKillAppTimeout
 REG_SZ
 20000
Determines how long the system waits for user processes to end after the user attempts to log off
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 MenuShowDelay
 REG_SZ
 10
Changes the Start menu display interval
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 CursorBlinkRate
 REG_SZ
 -1
Specifies how much time elapses between each blink of the selection cursor
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
DisableCursorBlink
REG_DWORD
 1
Enables / Disables Cursor Blink
XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 DragFullWindows
 REG_SZ
 0
Specifies what appears on the screen while a user drags a window / Only the outline of the window moves
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 SmoothScroll
 REG_DWORD
 0
Scrolls using smooth scrolling
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 Wallpaper
 REG_SZ
 (none)
Sets Wallpaper to "None" 
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktopWindowsMetrics
 MinAnimate
 REG_SZ
 0
Disabled. Window does not animate while being resized 
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStationsICA-TcpUserOverrideControl PanelDesktop
 InteractiveDelay
 REG_DWORD
 40
Optimizes Explorer and Start Menu responses Times
 XenApp 4.X / 5.X
HKLMSYSTEMCurrentControlSetServicesCTXCPUREBal
 Start
 REG_DWORD
 2
On Enterprise Servers Only, with Multiples CPU Only. Enables the "Citrix CPU Rebalancing Service" which is responsible for spreading non multi cpu applications loads to all CPUs.
 XenApp 4.X / 5.X
 
User Profile Tuning
 
The following settings are designed to tune the Default user profile. I'm mainly using them within Mandatory Profiles or Template Profile for Citrix Portable Profiles.
 
Registry Hive
Value
Type
Data
Purpose(s)
HKCUControl PanelDesktop
 AutoEndTasks
 REG_SZ
 1
 Determines whether user processes end automatically when the user either logs off.
HKCUControl PanelDesktop
 WaitToKillAppTimeout
 REG_SZ
 20000
Determines how long the system waits for user processes to end after the user attempts to log off
HKCUControl PanelDesktop
 MenuShowDelay
 REG_SZ
 10
Changes the Start menu display interval
HKCUControl PanelDesktop
 CursorBlinkRate
 REG_SZ
 -1
Specifies how much time elapses between each blink of the selection cursor
HKCUControl PanelDesktop
 DisableCursorBlink
 REG_DWORD
&nbp;1
Enables / Disables Cursor Blink
HKCUControl PanelDesktop
 DragFullWindows
 REG_SZ
 0
Specifies what appears on the screen while a user drags a window / Only the outline of the window moves
HKCUControl PanelDesktop
 SmoothScroll
 REG_DWORD
 0
Scrolls using smooth scrolling
HKCUControl PanelDesktop
 Wallpaper
 REG_SZ
 (none)
Sets Wallpaper to "None" 
HKCUControl PanelWindowsMetrics
 MinAnimate
 REG_SZ
 0
Disabled. Window does not animate while being resized 
HKCUControl PanelDesktop
 InteractiveDelay
 REG_DWORD
 40
Optimizes Explorer and Start Menu responses Times
HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerVisualEffects
 VisualFXSetting
 REG_DWORD
 2
Sets Visual effects to "Optimize for Best Performances"
HKCUSoftwareMicrosoftInternet ExplorerMain
 Force Offscreen Composition
 REG_DWORD
 1
Force Internet Explore to use Offscreen Composition
HKCUSoftwareMicrosoftCTF
 Disable Thread Input Manager
 REG_DWORD
 1
Disables Language Bar 1/4
HKCUSoftwareMicrosoftCTFLangBar
 ExtraIconsOnMinimized
 REG_DWORD
 0
Disables Language Bar 2/4
HKCUSoftwareMicrosoftCTFLangBar
 ShowStatus
 REG_DWORD
 2
Disables Language Bar 3/4
HKCUSoftwareMicrosoftCTFMSUTB
 ShowDeskBand
 REG_DWORD
 1
Disables Language Bar 4/4
 
 
XenApp Client Tuning
 
The following settings are designed to tune / debug the XenApp / XenDesktop ICA Client. These tips are extracted from an article originally published on Jim Moyle's Blog. I'd like to thank him for contacting me and asking me to add them to our existing tuning Article.
 
Description
Key
Value Name
Value
Automatically repair clipboard chain
CTX112434
HKEY_LOCAL_MACHINESOFTWARE CitrixICA ClientEngineConfigurationAdvanced ModulesWFClient
CbChainInterval
<value> 0-2000 valid
Prevent long logon script time breaking session sharing
HKEY_LOCAL_MACHINESOFTWARE CitrixICA ClientEngineConfigurationAdvanced ModulesWFClient
ucConnTimeout
<string value> needs to be >20
Log the Launch.ica file to a Client Local File
CTX115304
HKEY_LOCAL_MACHINESOFTWARE CitrixICA ClientEngineConfigurationAdvanced ModulesLogging
LogFile=<path to file to log to that you want, use following format C:icaica.log>
LogICAFile=true
Disable selected virtual channels from the client side
CTX116890
HKEY_LOCAL_MACHINESOFTWARE CitrixICA ClientEngineConfigurationAdvanced ModulesICA 3.0
Remove relevant value
 
Revert to 9.x printing behaviour for a specific driver
CTX115553
HKEY_LOCAL_MACHINESoftware CitrixICA Client
ReprocessEMFDriverList
<driver name>
Allow more than 20 client files open from a client mapped drive
HKEY_LOCAL_MACHINE SOFTWARECitrixICA ClientEngineConfigurationAdvanced ModulesClientDrive
MaxOpenContext
<value> eg 50
Prevent a seamless window from permanently hiding a minimized taskbar
HKEY_LOCAL_MACHINE SOFTWARECitrixICA ClientEngineLockdown ProfilesAll RegionsLockdownVirtual ChannelsSeamless Windows
TWIShrinkWorkArea
Value: 5
Allow Custom Virtual Channels in ICA after upgrading from an earlier client
HKEY_LOCAL_MACHINE SOFTWARECitrixICA ClientEngineLockdown ProfilesAll RegionsLockdownVirtual ChannelsThird PartyCustomVC
VirtualChannels
“”
How to use print screen in ICA sessions
HKEY_LOCAL_MACHINE SOFTWARECitrixICA ClientEngineConfigurationAdvanced ModulesWFClient
ICAPrntScrnKey
<value> eg F12
Make a seamless window the focus as soon as it activates
HKEY_LOCAL_MACHINE SoftwareCitrixICA ClientEngineConfigurationAdvanced ModulesWFClient
TWISeamlessFlag
1
 
Microsoft Office Tuning
 
The following settings are designed to tune Microsoft Office Applications for Terminal services / XenApp Use.
To use with your Office Version, Replace the #OfficeVersion# token with :
  • 9.0 for Microsoft Office 2000
  • 10.0 for Microsoft Office XP
  • 11.0 for Microsoft Office 2003
  • 12.0 for Microsoft Office 2007
When a token is not specified that's because the Tip do not apply to all versions
 
Registry Hive
Value
Type
Data
Purpose(s)
HKLMSoftwareMicrosoftOffice11.0ExcelOptions
 AlwaysSaveToCurrentPath
 REG_DWORD
 1
Always Save in Current Path(Even Remote Documents)
HKLMSoftwarePoliciesMicrosoftOffice#OfficeVersion#WordOptionsvpref
 fSplBkg_99_1
 REG_DWORD
 0
Word : Disables Check Spelling as You Type
HKLMSoftwarePoliciesMicrosoftOffice#OfficeVersion#WordOptions
 fGramBkg_535_1
 REG_DWORD
 0
Word : Disables Check Grammar as You Type
HKLMSoftwarePoliciesMicrosoftOffice#OfficeVersion#WordOptionsAssist
 fCorrectTyping_16_1
 REG_DWORD
 0
Word : Disables Text Replacement As You Type
HKLMSoftwarePoliciesMicrosoftOffice#OfficeVersion#ExcelOptions
 fAnimationsOK_129_1
 REG_DWORD
 0
Excel : Disables Provide a Feedback With Animation
HKLMSYSTEMSoftwarePoliciesMicrosoftOffice#OfficeVersion#PowerPointOptions
 Background spell checking
 REG_DWORD
 0
Powerpoint : Disables Check Spelling as You Type
HKLMSoftwareMicrosoftOffice11.0CommonOpen FindPlacesStandardPlacesDesktop
 Show
 REG_DWORD
 0 or 1
 Manages the Display of the Desktop link Within Office Places Bar
HKLMSoftwareMicrosoftOffice11.0CommonOpen FindPlacesStandardPlacesMyComputer
 Show
 REG_DWORD
 0 or 1
 Manages the Display of the My Computer link Within Office Places Bar
HKLMSoftwareMicrosoftOffice11.0CommonOpen FindPlacesStandardPlacesMyDocuments
 Show
 REG_DWORD
  0 or 1
 Manages the Display of the My Documents link Within Office Places Bar
HKLMSoftwareMicrosoftOffice11.0CommonOpen FindPlacesStandardPlacesPublishing
 Show
 REG_DWORD
  0 or 1
 Manages the Display of the Network Locations link Within Office Places Bar
HKLMSoftwareMicrosoftOffice11.0CommonOpen FindPlacesStandardPlacesRecent
 Show
 REG_DWORD
  0 or 1
 Manages the Display of the Recent Documents link Within Office Places Bar
 
5 comments
By: Bill Sorenson (bsorenson)
24 July, 2009
We just saw an instance where a .NET application, Peachtree 2009 and 2010 would NOT load screens due to the CursorBlinkRate being changed. It took us over 100 hours of time with more then 40 hours on the phone with Peachtree to narrow it down and find it. Setting it breaks the Peachtree application and it's related to those screens being written in .NET.

Just posting this as many of our optimizations came from this site for our Terminal Server environment. Beware!

Thanks,
Bill Sorenson
bsorenson@ivdesk.com
www.IVDesk.com
By: Pierre Marmignon (pmarmignon)
24 July, 2009
Dear Bill,

Sorry for the side effects you've encountered.

I've never seen such a problem with the Cursor Blink Rate being modified in years of use.

Thanks for your feedback.

Best Regards,

Pierre
By: Sam Rayes (justatry)
12 August, 2009
i remember that there was a guy who made an adm template with these settings so u can enforce them via gpo , is that still available ? and did he updated it ?
By: Francesco Dipietromaria (fdpm)
1 September, 2009
Hi Pierre,
I remeber from the old Methodology in a Box from DABCC that the HKLMSYSTEMCurrentControlSetControlPriorityControl Win32PrioritySeparation should be set to backgroung process (value of 24) rather than foregroung (value of 38) because of the way sessions are managed. would it be possible to investigate a little more on that settings? BTW it is possible to change that setting via Start -> Settings -> Control Panel -> System -> Advanced Tab -> Performance Options
-> Set Application response to ‘Background services’

Regards,
FD
By: vuccino vincent (vvuccino)
29 September, 2009
Hi

Thanks for this post.

For me HKLMSoftwareMicrosoftWindowsCurrentVersionExplorerVisualEffects

doesn't work.(option box doesnt changed in advanced settings)

But I try in HKCU, and here it works fine. (option box are well Displayed in advanced settongs)

Do you think it's just the display or settings are in HKCU ?


Bye

Vincent

You need to login to post a comment.