Bobcares

Remote Desktop Services Is Currently Busy – How to fix?

by | Nov 4, 2020

Users often receive the error message “remote desktop services is currently busy” while connecting to a Windows server using RDP.

As a part of our Server Management Services, we help our Customers with Windows related errors regularly.

Let us today discuss the possible causes and fixes for this error.

What causes the error remote desktop services is currently busy?

Sometimes users cannot connect to RDS Windows Server using the built-in RDP client (mstsc.exe) with the following error:

Remote Desktop Services Is Currently Busy

The error may appear for a number of reasons as given below:

  • An error in the operation of the Remote Desktop Services
  • A bug in the csrss.exe process
  • An issue with a user profile or profsvc service
  • Lack of RAM or disk space on the RDSH server
  • Incorrect Group Policy settings

Let us now look at the possible methods to fix this error.

How to fix the error remote desktop services is currently busy?

 

Check RDS Server Resources

Make sure that we have enough server resources since the problem may occur due to the lack of RAM or disk space.

Check the RAM load and how much free space is left on the disk with the operating system installed (there must be at least 1GB). Also, view the event log to see if there are any critical errors related to RDS.

 

Reset Stuck Client Remote Desktop Session on RDS

First of all, try to find and reset a session of the user who cannot logon to the RDS server.

Find a user in the Users tab of the Task Manager and click Log off in the context menu.

In most cases, it is enough to solve the problem. But sometimes we can find multiple hung sessions with the name (4) instead of a username in the Task Manager. As a rule, there will be 4 processes in a hung RDS user session:

  • Client-Server Runtime Process (csrss.exe)
  • Desktop Windows Manager (dwm.exe)
  • Windows Logon Application (winlogon.exe)
  • Windows Logon User Interface

To start with, try to reset all hung (4) RDS sessions in the Task Manager. If it does not help, it is better to reboot the server.

But this is often not possible, as it will affect other users’ sessions on the RDS host. So let us try to solve the problem without rebooting the host.

First, run the elevated command prompt and execute the command:

C:\>query session
SESSIONNAME USERNAME ID STATE TYPE DEVICE
services 0 Disc
rdp-tcp#5 bob 2 Active
console 3 Conn
7a78855482a04... 65536 Listen
rdp-tcp 65537 Listen

It will show all users and their remote sessions on the RDS host. There are 3 columns we need in the output: SESSIONNAME, USERNAME and ID.

Find the (4) user and the corresponding ID, in this example, it is ID 2. We must kill the csrss.exe process that is working in this session.

Now, display the list of the running process in the session ID we received earlier:

C:\>query process /id 2
USERNAME SESSIONNAME ID PID IMAGE
>system rdp-tcp#5 2 5140 csrss.exe
>system rdp-tcp#5 2 956 winlogon.exe
>umfd-2 rdp-tcp#5 2 2796 fontdrvhost.exe
>dwm-2 rdp-tcp#5 2 5888 dwm.exe

Find the csrss.exe process (check the IMAGE column) and its PID. In this case, the PID is 5140. We need to kill this process.

Now, open the Task Manager, go to the Details tab and find the PID and the process from the previous step.

If the PID we need corresponds to the csrss.exe process, kill the process by clicking End task in the context menu or by entering the following command in the command prompt:

taskkill /F /PID 5140

Do it for each (4) user if there are some of them.

 

Resetting an RDS User Session

If we were not able to log off a problem user in the Task Manager, we can try to reset an RDS user session from the command prompt:

First, open the command prompt as administrator and run the command:

query session

Copy the SESSIONNAME of the problem user.

Now enter:

reset session <SESSIONNAME>

Specify the session name we have instead of <sessionname>.

Do it for each problem RDS user session. Then we may try to log on and a problem should not occur again.

 

Check Licensing Settings on the RDS Host

Make sure that the license server and license type (CAL Per User/ CAL Per Device) specified on the RDS host are correct.

The error ‘The task we are trying to do can’t be completed because Remote Desktop Services is currently busy’ can occur when we forget to specify the hostname/IP address of the server with the Remote Desktop Licensing role.

We can specify the address of the server with RDS licenses:

  •  In the RDS collection settings: Tasks -> Edit Deployment Properties -> RD Licensing -> Specify a license server
  • In GPO: Use the specified Remote Desktop license servers (Computer Configuration -> Policies -> Admin Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing)

Remove the RDP Connection Limit in GPO

We can use Group Policies to limit the number of concurrent (simultaneous) RDS connections. This policy setting is disabled by default.

Make sure if the policy is enabled and get its value using gpresult.

  1. Run the following command in the elevated command prompt:
    gpresult /H c:\gpresult.html
  2. Open the gpresult.html file located in the root of disk C. It is a common .html file and it is recommended to open it in Internet Explorer since it may be displayed incorrectly in other browsers
  3. Find the GPO setting named Limit number of connections under Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host\Connections or type Limit number of connections to search on page

If the policy is enabled and the maximum number of connections is set, change the value as we want.

We can edit a local Group Policy Editor (gpedit.msc), and if the policy is set using domain GPO, edit it in gpmc.msc.

After we have done it, do not forget to run the command gpupdate /force to apply the new Group Policy settings immediately.

[Need any further assistance in fixing Remote Desktop errors? – We’re available 24*7]

 

Conclusion

In short, the error “remote desktop services is currently busy” occurs while connecting to a Windows server using RDP.  This happens due to a number of reasons that include an error in the operation of the Remote Desktop Services, a bug in the csrss.exe process, etc. Today, we saw how our Support Engineers fix this error.

 

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

3 Comments

  1. Sanjay Maharjan

    In my case it was because of disk space in user’s PC.delete some files from windwos recovery mode and its fixed.

    Reply
  2. Jon

    thanks for the query session and reset session suggestion, this allowed me to RDP after a hung console session appeared to prevent using RDP or RMM agent to connect to the machine with any user

    Reply
    • Hiba Razak

      Hi,
      Thanks for the feedback. We are glad to know that our article was helpful for you 🙂 .

      Reply

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF