I had another occasion today where “The terminal server has exceeded the maximum number of allowed connections” due to abandoned sessions and was unable to remotely gain access to a server using Terminal Services because both sessions are used up. I can use another server to check the status of the first one, or in my case I can connect into a client computer remotely. As long as the logged in user has administrative rights on the non-accessible machine I would run this:
qwinsta /server:12.12.12.12
Where 12.12.12.12 is the IP address or name of the non-accessible machine.
This will display something like this:
> qwinsta /server:12.12.12.12
SESSIONNAME USERNAME ID STATE TYPE DEVICE
console 0 Conn wdcon
rdp-tcp 65536 Listen rdpwd
rdp-tcp#470 Bob 1 Active rdpwd
rdp-tcp#471 Jane 3 Active rdpwd
Now I know that Bob and Jane are the two that are logged in. Since Jane left the office 20 minutes ago I know that she forgot to log off. I don’t know where Bob is but I only need one session so I’ll ignore him for now.
To disconnect Jane’s session (number 3 as shown above) I would type this:
rwinsta /server:12.12.12.12 3
Strange names?. This came from the Citrix Metaframe days which Terminal Services has descended from. It stands for:
qwinsta = Query WINdows STAtion
rwinsta = Reset WINdows STAtion