64

I've been having this issue since I updated (fresh install) to Windows 10 Professional. I used to connect to my computer via RDP through WAN and LAN with no issues.

After installing W10 and setting up everything correctly (ports, static IP etc) I still can connect, but during the day it randomly kicks me out and I can't successfully log in afterwards. It makes a secure connection and connects, but I get a black screen without a cursor and disconnects a few seconds after that without any errors.

It's an Intel i7 desktop with nVidia GPU with the latest drivers.

Things that I know/tried:

  1. When issue occurs, I can replicate it on Windows, Mac, or iPads/iPhones over LAN or WAN.

  2. Rebooting temporarily fixes the problem, until it starts happening again.

  3. Disabling bitmap caching or changing resolution on RDP client doesn't fix it.

  4. Pressing CTRL + ALT + END doesn't do anything.

  5. Created a new account and tried logging on to that to test if it is account related, still didn't log in.

  6. Did a sfc /scannow to do a system scan and fix corrupt files, it came out with no errors.

  7. I checked the event log and apparently WINLOGON keeps crashing. It only says "the windows logon process has unexpectedly terminated"

I ran out of options to fix this, any help will be appreciated.

10
  • Is it the client or the server that you reboot that fixes the problem?
    – cdavid
    Sep 21, 2015 at 23:22
  • Have you tried using a VPN and not exposing 3389 to the WAN?
    – Linef4ult
    Sep 22, 2015 at 5:36
  • Me too. It's not this - tenforums.com/network-sharing/… because I have passwords on all the accounts, and it does the same thing regardless of local console connections status. Jan 9, 2016 at 20:04
  • I have been experiencing this issue with server 2012 R2, and while the issue may not be related, the symptoms are very similar. Black screen and rebooting the server fixed it for a while. I don't have an answer, but I have it linked to TermService service crashing, despite not much in the logs indicating it. TermService is unusual since it can't be stopped via services.msc, but you can use tasklist /svc | findstr /C:TermService to identify the Process ID and taskkill /F /PID [process_id] to end the process. Start TermService using net start TermService. I am still working on a solution. Aug 24, 2016 at 2:03
  • 1
    @Todilo See my answer below. Mar 12, 2018 at 22:39

12 Answers 12

54

Remote Desktop – Black Screen Of Death

The Issue

Using Remote Desktop the remote screen turns black right after login and you have no control. The issue appears to be caused by Screen Caching and accessing a system with different display resolution or RDP window sizes.

The Solution(s)

  • While logged in and stuck on the black screen of death
    1. Press CTRL+ALT+END, or CTRL+ALT+FN+END on laptops. This calls Task Manager and in most cases you’ll immediately see the Desktop.
    2. If only Task Manager but no Desktop appears try running Explorer from Task Manager: File > New Task > Explorer.exe
  • Try connecting at a different resolution.
  • Access the remote computers Computer Management or Services MMC and cycle the Remote Desktop Services service.
  • Update display drivers, both on the connecting machine and on the machine you are connecting too.
    1. Some users are experiencing this with Nvidia GPUs. The Geforce Experience program has a "Share" feature aka "shadow play"; when enabled some people experience the problem. Try to disable it, restart and see if it helps.
    2. Check the display settings at the remote host and see if there is a phantom monitor present. Might need to change which monitor is the primary one
  • Start a new RDP client on your desktop but BEFORE you click CONNECT, click the SHOW OPTIONS link, click the DISPLAY tab and set the DISPLAY CONFIGURATION to a low resolution like 640×480.
  • Try turning off Fast Startup
    • This feature only works when you do a SHUTDOWN and then Boot. It doesn't effect a RESTART.
    • Go to Control panel, Power Options and select Choose What the Power Buttons Do on the left.
    • Then select Change Settings That are Currently Unavailable near the top center of screen...
    • Lower down on the window, uncheck Fast Startup.

Prevention

  • Disable bitmap caching for your RDP connections
  • Confirm RDP account has full administrative rights on remote system
  • Access the remote computer using consistent resolution – Full screen may help
  • Confirm both systems' video drivers are up to date

Resources

(Google it at Microsoft support sites; I have too low a reputation to post links)

  • Disable Bitmap Caching 2012
  • Hotfix for “Black screen during a Remote Assistance session in Windows Vista, in Windows Server 2008, in Windows 7, or in Windows Server 2008 R2”
  • The lock screen is black or blank and does not respond to keyboard or swipe actions in Windows 10 Technical Preview

Disable Bitmap Caching

6
  • 7
    None of this works, maybe this issue has resurfaced with a different cause..
    – Dirigible
    Mar 28, 2019 at 14:59
  • 3
    As of 2019/6/28 Windows 10 v1809 the above steps worked. I only needed to perform "While logged in and stuck on the black screen of death " steps 1 & 2
    – MickyD
    Jun 28, 2019 at 2:12
  • Another work-around (how I fixed it permanently) is to just install/use the RDC Manager for all RDP: microsoft.com/en-us/download/details.aspx?id=44989 - I like it better anyway..
    – B. Shea
    Jul 7, 2019 at 14:39
  • Pulling up ctrl + alt + delete worked for me. I logged out from that screen and upon rdp'ing back in, the desktop loaded normally Jun 15, 2020 at 20:05
  • I run into this issue when acessing RDP from home, while it works fine on the same laptop in office. My guess it has something to do with a network Dec 12, 2020 at 10:30
6

I tried all of the above suggestions but none of them worked for me. I just wanted to restart the remote machine to see whether it will fix the issue. It indeed worked.

I did the following to restart the remote machine via command line (with admin privilege) as I could not find a way to restart the remote machine via RDP.

Step 1: Login to the remote machine

net use \\<remote machine IP>\IPC$ <password> /USER:<username>
Ex: net use \\192.168.0.1\IPC$ password1 /USER:user1

Step 2: Restart remote machine

shutdown /r /m \\<remote machine IP>
Ex: shutdown /r /m \\192.168.0.1
4

None of the other answers worked for me, I finally found something that did, after a lot of digging. Use the Group Policy Editor (or download the superior "Policy Plus"), and disable UDP. You can find this in policy rds/client or rds/host/connection/select protocols, or in the registry at SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client

There are a lot of settings to fiddle with in there, you could also try disabling RemoteFX graphics.

3

The remote desktop that I was connecting to had a max resolution of 1600x900, while the home desktop I was connecting from was operating at 1920x1080.

On the black-screen RDP, I did the following to resolve it:

  1. Closed the black-screen RDP using the "x" on the blue bar on top.

  2. Explicitly set the display to 1600x900 in the RDP client, then connected.

1600x900 RDP

  1. While that session was still open, started another RDP client to the same machine, this time with display set to 'Large'.

  2. The first RDP session automatically ended, the second one started at my current monitor's full resolution of 1920x1080.

1
  • While being the simplest, this solution seems to work well. I must also add that, in my case I didn't have to keep the rdp session screen open. I simply closed rdp client, changed the resolution and restarted. Mar 16, 2021 at 9:43
2

I've had the same problem - switch from 32bit to 24bit colours and it will let you connect as normal. All other settings can be left on their defaults.

Picture of RDP settings with 24bit colours highlighted

2
  • 1
    didn't work for me
    – stiv
    Jun 5, 2019 at 21:21
  • @stiv probably a Windows update breaking stuff Jun 5, 2019 at 23:47
2

In my case it was python miniconda, which has known issue spoiling PATH on linux in .bashrc, some details are in my answer

2

Repeating a workaround documented by @johnny Keeton above, proposing as answer because it worked for me when the other solutions above did not...

tasklist /svc | findstr /C:TermService to identify the Process ID, and
taskkill /F /PID [process_id] to end the process
net start TermService to restart (though it will restart on its own in my experience)

– Johnny Keeton Aug 24 '16 at 2:03

1

This might not help but I solved it by turning down the resolution. The problem occured as the monitor I was connecting from was 2560x1440, and the remote computer wouldn't allow that. Turning it down to 1920x1080 worked fine and I am now connected with everything showing.

1

I had this issue since I was having different DPI. On my laptop I had DPI set to 125% while a computer I was connecting had 100%. Setting DPI to 100% on laptop solved the problem.

1

When I have this issue I move the RDP screen to my default screen and maximize the screen. The RDP screen should no longer be black. I then move the RDP to my secondary screen. Not the best work around, but it works.

1

Had the same issue. The following worked out for me:

  1. Right-click the current Graphics item in Device manager, and select "Update driver".
  2. Choose "Browse my computer for driver software"
  3. Choose "Let me pick from a list of device drivers"
  4. Select "Microsoft Basic Display Adapter"
1

I had this issue after I installed Oracle VM and a Lubuntu image. Right after the Oracle installation everything was fine and I also managed to install Lubuntu. I've done everything through RDC. Suddenly, the screen went black. I haven't restarted the computer or done anything worth mentioning at all, it just happened. This all happened in one single session.

I then tried restarting the computer manually, I tried all of the above settings which helped other people and I also uninstalled Oracle VM. Nothing helped.

In the end, I restored my computer to the state before I installed Oracle VM with a restore point that was generated automatically by my computer. Now RDC works again and I'm able to see the screen.

tl;dr: use a restore point if RDC used to work but doesn't work anymore

Not the answer you're looking for? Browse other questions tagged or ask your own question.