Windows 10: Black Lock Screen with Citrix Receiver

The Spotlight feature of Windows 10 shows beautiful images on the lock screen. Annoyingly, it appears to be broken on many machines, showing a black screen instead of a pretty photograph. Read on for the cause and a workaround.

The Black Lock Screen

Users that are affected by this issue get a fully working lock screen, just without the photograph, i.e. a black screen with time, date and the other controls on it. For an example see the screenshot above.

When a key is pressed and Windows switches from the lock screen to the login screen the background image suddenly appears. This black screen issue affects the lock screen only.

The Cause

As some people noticed the black lock screen issue is caused by applications modifying the setting Animate windows when minimizing and maximizing.

Apparently that setting needs to be turned on or the lock screen will be black. Interestingly, when applications modify this setting the change is not reflected in the UI. You may see Animate windows when minimizing and maximizing enabled in System Properties > Performance Options > Visual Effects like in the following screenshot and still get a black lock screen:

Citrix Receiver and the Black Lock Screen

In some forum posts Citrix Receiver is mentioned as the application causing the black lock screen. Those posts lacked detail, however, so I decided to take a look.

I made sure to have the latest version of Receiver installed on Windows 10 1607. Locking the screen by pressing CTRL+L I got the black lock screen all right.

After removing the black lock screen using the workaround described below I tried to identify which of the serveral processes that Citrix Receiver is comprised of actually causes the issue. As it turns out, Connection Center is the culprit. Whenever concentr.exe is started it seems to call some API function to change the visual effects in such a way that the black lock screen issue appears.

Workaround for the Black Lock Screen Issue

An easy manual workaround to get the lock screen to display images again is to open the Performance Options dialog shown above on the Visual Effects tab, change any setting (without saving), reverting it back and clicking OK. That overwrites the settings modified by Citrix Receiver’s Connection Center and the lock screen image is back.

API Functions for Programmatic Change

I did not find a script or tool that can change the setting Animate windows when minimizing and maximizing. If you are trying to write one here is some information to get you started.

The relevant Windows API function is SystemParametersInfo. Call it with the parameter SPI_GETANIMATION to query the current state or SPI_SETANIMATION to set a new state. Sample code in C# is available on Stack Overflow.

After a change via SPI_SETANIMATION it might be necessary to send a notification with something similar to the technique described in this post.

, ,

11 Responses to Windows 10: Black Lock Screen with Citrix Receiver

  1. Joe Nord February 13, 2017 at 21:48 #

    You sir, are a genius! In my case, checkbox was checked, unchecked it – became custom, hit apply, checked it, hit apply, back to let windows manage and … FIXED.

    • Remko Weijnen February 13, 2017 at 22:21 #

      Until next launch of concentrr.exe @Joe Nord see this pseudo code from concentr.exe disassembly:
      BOOL sub_409B00()
      BOOL result; // eax@3
      int pvParam; // [esp+8h] [ebp-8h]@1
      int v2; // [esp+Ch] [ebp-4h]@1

      pvParam = 0;
      v2 = 0;
      ::pvParam = 0;
      dword_45F278 = SystemParametersInfoA(0x2000u, 0, &::pvParam, 0);
      if ( dword_45F278 )
      SystemParametersInfoA(0x2001u, 0, 0, 2u);
      pvParam = 8;
      v2 = 0;
      result = SystemParametersInfoA(0x48u, 8u, &pvParam, 0);
      dword_45F26C = result;
      if ( result )
      dword_45F274 = v2;
      pvParam = 8;
      v2 = 0;
      result = SystemParametersInfoA(SPI_SETANIMATION, 8u, &pvParam, 2u);
      return result;

      @Helge the correct message is to broadcast WM_SETTINGCHANGE.

      I think it would be better for concentr.exe to call DwmSetWindowAttribute with the DWMWA_TRANSITIONS_FORCEDISABLED flag on it’s own HWND to disable this only for Receiver windows rather than global…

      • Helge Klein February 13, 2017 at 22:38 #

        Thanks for sharing, Remko. If I understand correctly, concentr.exe queries the current state via SPI_GETANIMATION. If it is enabled, it calls SPI_SETANIMATION to disable it.

        • Remko Weijnen February 13, 2017 at 22:39 #

          Yes that’s correct

          • Joe Nord February 15, 2017 at 22:06 #

            Reboot and things are back to bad. @helge you remain awesome anyway. @remko Citrix connection manager caused this? My own companies products! Really! Just to its own HWND, yes, but what about the passthru case? Requires study, why did programmer think a wide broadcast was needed?

            I *ASS*U*ME*D this was a graphics driver issue – looks like no. Hum….

          • Helge Klein February 15, 2017 at 22:15 #

            Connection Center is auto-run by way of an entry in HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run. That might be (part of) the reason why the black lock screen is back after a reboot.

            Note: I am aware of the fact that the run key is processed by Explorer, which should happen after the lock screen has been displayed.

  2. Josiah Pewterbaugh February 16, 2017 at 15:04 #

    I have a ticket open with Citrix regarding this. A workaround they suggested was to rename concentr.exe to concentr.exe.old. The technician told me their engineering team is aware and is working on a fix.

    • P. Cruiser February 22, 2017 at 23:30 #

      @Josiah – Citrix Receiver 4.7 is now available if anyone wants to test it against this issue.

      • Helge Klein February 22, 2017 at 23:32 #

        According to this tweet Citrix Receiver 4.7 does not fix the black lock screen issue.

      • Helge Klein March 20, 2017 at 23:42 #

        I just tested with Citrix Receiver unfortunately the issue is not fixed.

  3. Sean M. March 15, 2017 at 22:27 #

    Thank you so much for this fix! I used Joe Nord’s suggestions because I think if you do exactly what it does in the article, it leaves the option as “Custom”, and I wanted it to be “Let windows choose what’s best for my computer”. Been stuck with an annoying black lockscreen for months after downloading Citrix for school…didn’t know that Citrix was even the problem, screen was just inexplicably dark.
    I had some trouble finding Performance options, but found it by going to settings, typing in “performance” (don’t put in “performance options”, it won’t come up), then clicking on the second option, “adjust the appearance and performance of windows”

Leave a Reply