Monday, May 7, 2012

Win2008 R2 SP1: The Remote Desktop Services service terminated unexpectedly. Error 7031.

Win2008 R2 SP1: The Remote Desktop Services service terminated unexpectedly. Error 7031.

After I joined a Windows 2008 R2 SP1 machine to the domain and rebooted, the remote desktop services would connect, display the applying group policy setting and then terminate the session.  It would throw an error when you try to connect again as if the remote desktop services were not enabled.
I logged into the server using iLO and noticed that the Remote Desktop Services was in a stopped state. Check the system log and found the error 7031 with a description “The Remote Desktop Services service terminated unexpectedly.  It has done this 2 time(s).  The following corrective action will be taken in 60000 milliseconds: Restart the service.”

Started the service and tried logging in again and issue repeated. However I was able to log in as a local administrator after the service was started. It was only crashing when the login was attempted using a domain account.
Spent some time troubleshooting and finally hit on KB 2667402 which explained the reason for this behavior to be a security update which places a wrong version of the Rdpcorekmts.dll file. The explanation is as below.
"After you install security update 2667402 on a computer that is running Windows 7 or Windows Server 2008 R2, and then you install Service Pack 1 (SP1) for Windows 7 or Windows Server 2008 R2, the binary version of Rdpcorekmts.dll is 6.1.7600.16952 and not 6.1.7601.17767. In this scenario, you may be unable to create a remote desktop session to control the Windows 7 or Windows Server 2008 R2-based computer. "

Uninstalled the KB 2667402 and rebooted and the ghost vanished and it let me connect on remote desktop. Was tempted to reinstall the KB and see the result, but didn’t. As per the article reinstalling the KB should resolve the issue.