2008 R2 SP1 kills Remote Desktop Services

Ran into this problem this morning when installing 2008 R2 SP1. Service Pack installs successfully, but cannot login via remote desktop services. Checked the eventlog remotely. found the following in the application log. Event ID 7034 reports which doesn’t help a lot.  Also Event ID: 1000 reports an application error.

Faulting application name: svchost.exe_TermService, version: 6.1.7600.16385, time stamp: 0x4a5bc3c1
Faulting module name: rdpcorekmts.dll, version: 6.1.7600.16952, time stamp: 0x4f1f9e66
Exception code: 0xc0000005
Fault offset: 0x000000000000a793
Faulting process id: 0xf80
Faulting application start time: 0x01cd1e4172e7da89
Faulting application path: C:WindowsSystem32svchost.exe
Faulting module path: C:Windowssystem32rdpcorekmts.dll
Report Id: eec16b12-8a34-11e1-8e8c-0050568ac72d

after a quick google I found the following thread

http://social.technet.microsoft.com/Forums/en-AU/winservergen/thread/f5855b60-f29c-4c90-b364-e364589e5267

And the following fix.

You need to run this with a user that is an admin on the target system.
Copy psexec and rdpcorekmts.dll (the new version) to a folder.
Create a file named servernames.txt and add the name of the server(s) you want to fi
Create a start.cmd file edit it and add the following:

@echo off
Echo ****************************************************
echo * This process will update and change the file rdpcorekmts. *
echo * If you don’t want to do that, ‘X’ out now                 *
echo ***************************************************
pause

:stop remote desktop services for /f %%i in (servernames.txt) do psexec \%%i net stop “Remote Desktop Services” /y

:Take Ownership for /f %%i in (servernames.txt) do psexec \%%i takeown /F c:windowssystem32rdpcorekmts.dll

:Change permissions to full for /f %%i in (servernames.txt) do psexec \%%i icacls c:windowssystem32rdpcorekmts.dll /grant administrators:F

:Copy in newer version for /f %%i in (servernames.txt) do copy rdpcorekmts.dll \%%ic$windowssystem32

:Change permissions back to read-only for /f %%i in (servernames.txt) do psexec \%%i icacls c:windowssystem32rdpcorekmts.dll /grant administrators:R

:start the service back up for /f %%i in (servernames.txt) do psexec \%%i net start “Remote Desktop Services” /y
Echo***************************************************

echo * Remove the names of the affected servers in the file Servernames *
echo***************************************************

Echo *Should be all done now. *
echo **************************

pause exit

Doubleclick start.cmd

You should now be able to login to your server.

Advertisements

One thought on “2008 R2 SP1 kills Remote Desktop Services

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s