Tuesday, March 31, 2009

Clearing Terminal Server Licence from Client

The remote desktop client on windows workstations cache a licence that has been delegated out by a terminal server licencing server. If this licence is no longer valid you need to delete it from the client computers cache in order to allow the client computer to login.

You may experiance either of these errors while connecting to a Terminal Server using the Remote Desktop Client:

The remote computer disconnected the session becuase of an error in the licensing protocol

The remote session was disconnected because the local computer's client access license could not be upgraded or renewed. Please contact the server administrator

To remove invalid licences from the client computers cache navigate to the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\

Remove all values under this location. Alternatively you can use this VBS Script:

On Error Resume Next
Dim WshShell, cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE000\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE001\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE002\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE003\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE004\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")

cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE005\"
WshShell.RegDelete cal1
Set WshShell = WScript.CreateObject("WScript.Shell")
cal1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing\Store\LICENSE006\"
WshShell.RegDelete cal1


Dumb Terminals that connect via RDP to terminal servers also cache terminal server licences. Please refer to vendor documentation on how to clear these.

No comments:

Post a Comment