Custom Tweaks for Windows Terminal Server 2003
NOTE: Registry changes mentioned below are suggested changes only; 2X is not responsible for the consequences of any implemented Registry changes.
For custom tweaks to Windows 2003 Terminal Server, to improve the overall end-user experience, please do the following:
First, access:
HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TcpUserOverride\Control Panel\Desktop
And change these values:
- “AutoEndTasks” REG_SZ “1″ (terminates programs that aren’t responding)
- “CursorBlinkRate” REG_SZ “-1″ (prevents the cursor from blinking, cutting down on screen redraws)
- “DragFullWindows” REG_SZ “0″ (disables “show contents” while dragging a window)
- “MenuShowDelay” REG_SZ “10″ (delay for showing submenus)
- “WaitToKillAppTimeout” REG_SZ “20000″ (number of milliseconds to wait before terminating an application that has stopped responding)
- “SmoothScroll Dword” REG_DWORD “00000000″ (disables smooth scrolling)
- “Wallpaper” REG_SZ “(none)” (disables wallpaper)
Then browse to:
HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TcpUserOverride\Control Panel\Desktop\WindowMetrics
And change this value: “MinAnimate” REG_SZ “0″ (disables the animation when resizing a window)
If any of these keys, subkeys or values do not exist, they should be created. This will enhance the user experience by increasing speeds for end users.
To configure individual settings, please follow the instructions below:
Eliminate IE Flickering: Configure this setting to force off-screen composition of Internet Explorer, eliminating the flickering effect. In HKEY_ CURRENT_USER\Software\Microsoft\Internet Explorer\Main, set the DWORD value for Force Offscreen Composition to 1.
Disable Office 2003 Customer Experience Improvement Program: Configure this setting to prevent Office from prompting the user to participate in this program. To enable, in HKEY_ CURRENT_USER\Software\Microsoft\Office\Common, set the DWORD value for QMEnable to 1.
Disable File Locking: Configure this setting to modify file locking behavior on the server. This will enhance performance, but it’s known to have issues with some database applications. To enable, in HKEY_LOCAL_ MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters, set the DWORD value for UseLockReadUnlock to 1.
Disable NTFS Last-Accessed Time Stamping: Configure this setting to prevent the system from updating the last accessed time stamp on files, which can enhance performance. Some applications require this to be accurate, so test prior to implementing. To enable, in HKEY_LOCAL_ MACHINE\System\CurrentCon trolSet\Control\FileSystem, set the DWORD value for NtfsDisable LastAccessUpdate to 1.
Turn Off Lazy Writes: This setting prevents the system from caching write operations before writing them to disk, which can speed operation over the network. Configure the following two keys: In HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\ LanmanServer\Parameters, set the DWORD value for IRPStackSize to 15. Also, in HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\ LanmanWorkstation\Parameters, set the DWORD value for UtilizeNT Caching to 0.
Improve Windows Kernel Performance: Prevents the system from paging kernel mode drivers and system code to the disk, which can impair performance. To configure, in HKEY_LOCAL_ MACHINE\System\CurrentCon trolSet\Control\Session Manager\ Memory Management, set the DWORD value for DisablePagingExecutive to 1.
Increase the Network Request Buffer: This setting boosts performance by increasing the size of the network request buffer, which determines how much data is stored before it is sent to the client. This setting can also improve LAN Manager file writing performance. Increasing the size of this buffer will consume RAM, so adjust and monitor settings carefully. To enable, in HKEY_ LOCAL_MACHINE\System\Current ControlSet\Services\LanmanServer\Parameters, increase the DWORD value for SizReqBuf to a value between 1024 and 65535.
Eliminate Session Hangs During Logoff: Terminal Server sessions can sometimes hang when the user attempts to log off. One solution is to modify available network buffers and open connections. Configure the following keys: In HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\ LanmanServer\Parameters, set the DWORD value for MaxWorkItems to 8196, MaxMpxCt to 2048, MaxRaw WorkItems to 512, MaxFreeConnections to 100, and MinFreeConnections to 32. In KEY_LOCAL_MACHINE\ System\CurrentControlSet\ Services\LanmanServer\Parameters, set the DWORD value for MaxCmds to 2048. Also, in HKEY_LOCAL_ MACHINE\System\Current ControlSet\Control\SessionManager\ ConfigurationManager, set the value for RegistryLazyFlushInterval to 60. Lastly, ensure that the Enable Advanced Performance feature is enabled when viewing device properties of all disk drives on the system.
Speed up Application Load Times: Increase the perceived performance by pre-loading commonly used files into memory. This works well on systems with plenty of available RAM. To enable, in HKEY_ LOCAL_MACHINE\System\ CurrentControlSet\Control\Session Manager\Memory Management\ PrefetchParameters, set the DWORD value for EnablePrefetcher to 3.
Disable Caching of Roaming Profiles: Excess terminal server roaming profiles can consume disk and Registry quota space. Configuring this setting can eliminate waste but increase user login time. To enable, in HKEY_ LOCAL_MACHINE\Software\ Microsoft\Windows NT\Current Version\Winlogon, set the DWORD value for DeleteRoamingCache to 1.
Disable Unused Subsystems: Not using the POSIX subsystem on your terminal server? Disable it and navigate to the registry location HKEY_LOCAL_ MACHINE\System\CurrentCon trolSet\Control\Session Manager\ Subsystems to delete the Posix key. You can also disable the File Indexing Service, which is great for quickly searching for files, but your terminal server arguably shouldn’t have that many user files on it and the indexing process can consume huge system resources. To disable it, navigate to the properties menu of each drive on your system and deselect the box for Allow Indexing Service to index this disk for quick file searching.
Applicable registry text is shown below:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\
Main]
“Force Offscreen Composition”=dword:00000001
[HKEY_CURRENT_USER\Software\Microsoft\Office\Common]
“QMEnable”=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
LanmanWorkstation\Parameters]
“UseLockReadUnlock”=dword:00000001
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\
FileSystem]
“NtfsDisableLastAccessUpdate”=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Lanman Server\Parameters]
“IRPStackSize”=dword:0000000f
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service\
Lanman WorkStation\Parameters]
“UtilizeNTCaching”=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\
Session Manager\Memory Management]
“DisablePagingExecutive”=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
LanmanServer\Parameters]
“SizReqBuf”=dword:0000ffff
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Lanmanserver\Parameters]
“MaxWorkItems”=dword:00002004
“MaxMpxCt”=dword:00000800
“MaxRawWorkItems”=dword:00000200
“MaxFreeConnections”=dword:00000064
“MinFreeConnections”=dword:00000020
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Lanmanworkstation\Parameters]
“MaxCmds”=dword:00000800
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\
Session Manager\Configuration Manager]
“RegistryLazyFlushInterval”=dword:0000003c
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\
SessionManager\Memory Management\PrefetchParameters]
“EnablePrefetcher”=”3″
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\
CurrentVersion\Winlogon]
“DeleteRoamingCache”=dword:00000001

We have implemented most of these reg edits on our 2X farm and have noticed better user experience with our employees connecting over the WAN. Thanks for the information.
good usable info. There are some good tweeks here that are very helpful. thanks for the post.