Windows 2008 R2 hangs on WELCOME screen

There are a lot of complaints about Windows 2008 R2 hanging on the Welcome screen when connecting via RDS.

First of all, make sure you check “Active Directory Site and Services” to ensure the subnet where your XenApp servers live are part of the proper “Site” where your local Domain Controllers are.

You can check the authentication server on your XenApp servers in command line by typing “set logonserver“.  This will provide you the information about the DC you are authenticating against.  If you see something wrong there, then head over to Active Directory Site and Services and make modifications.

In a Xenapp environment any authentication delays will end up becoming a big issue.  Now lets assume you already sorted out that you don’t actually have any domain, site or DNS misconfigurations.

Welcome screen

Welcome screen - XenApp

Solution:

GPO:

Disable “Always wait for the network at computer startup and logon” policy under Computer Configuration/Administrative Templates/System/Logon in the Group Policy.

Install Hotfix:
http://support.microsoft.com/kb/2617858

According to Microsoft Knowledge Base article 977346, set a solid color as your desktop background will cause Windows 7 and Windows Server 2008 R2 to displace the Welcome screen for 30 seconds during logon. Why? Apparently, the pause occurs because of a time-out interval that sometimes occurs when Windows switches between sessions. Microsoft Knowledge Base article 940452 discusses this time-out interval in greater detail and explains how it can also cause a 30-second delay if you enable the “Run logon script synchronously” Group Policy.

Apply Microsoft hotfix

A hotfix is available from Mircosoft to fix this issue. You can download the hotfix using the “View and request hotfix downloads” link on MSKB 977346.

Set an image file as your desktop background

If the hotfix doesn’t work or you just don’t want to install it, using an image file as your background is the easiest way to eliminate the 30-second delay. You can even use an image file that’s a solid color.

Edit the DelayedDesktopSwitchTimeout registry entry (This made a huge difference)

According to MSKB 977346, the value of the DelayedDesktopSwitchTimeout registry entry “determines the time-out interval of a session before Windows 7 or Windows Server 2008 R2 switches between sessions.” By default, the value of this entry is set to 30 (for 30 seconds). To reduce the delay, you can reduce this value.

  1. Click Start.
  2. Enter “regedit” in the Search programs and files box.
  3. Navigate to the registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  4. Double-click the DelayedDesktopSwitchTimeout entry.
  5. Type 5 in the Value data box, and then click OK.
  6. Close the Registry Editor.

Disable the Desktop Window Manager Session Manager service

As a last resort, you can also disable the Desktop Window Manager Session Manager service. This action should eliminate the delay, but it will also disable all the Windows Aero visual effects.

  1. Click Start.
  2. Type “services” in the Search programs and files box.
  3. Select Services from the results and press Enter.
  4. Double-click Desktop Windows Manager Session Manager.
  5. From the Startup type dropdown list, Select Disabled and click Apply.

Disable TCP hardware offloading on the RD Session Host (if you roam)

Issue was due to the RD Session Host having problems copying user profiles from the profile server to the RD Session Host.

Open a command prompt with Administrator permissions, enter the following one at a time, the output for each should show as ok

NETSH INT TCP SET GLOBAL CHIMNEY=DISABLED

NETSH INT IP SET GLOBAL TASKOFFLOAD=DISABLED

NETSH INT TCP SET GLOBAL RSS=DISABLED