Author Topic: "Screen cannot be captured at the moment" error when host display is off  (Read 15821 times)

Jacques

  • Newbie
  • *
  • Posts: 1
Hi: I want to share my experience with another case of "The screen cannot be captured at the moment" error when the host display is turned off.

Here is the case I recently submitted to TeamViewer support, based on private usage (no license), still awaiting response:

<< I am delighted with TeamViewer but I have a new issue with one host. I use my desktop to connect to my two laptops. All three machines run Windows 10 and TeamViewer 11. Both laptops have power option "When I close the lid" = "Do nothing".
When laptop #1 is running with the lid closed (its display goes off) I can run a Remote Control session.
When laptop #2 is running with the lid closed (its display goes off) I can Remote Control but every 3 seconds or so the image goes off and I get "The screen cannot be captured at the moment. This is probably due to a fast user switching or a disconnected/minimized Remote desktop session" then the image comes back and then off in an endless loop.
Could this be due to the graphics card?
Laptop #1 has an NVIDIA Quadro FX 1800M
Laptop #2 has the INTEL HD Graphics 520 and an NVIDIA GeForce GTX 950M >>
 
While waiting for a response from TeamViewer I browsed forum messages and found these two related cases:
 
"The dreaded "The screen cannot be captured at the moment..." error":
http://teamviewerforums.com/index.php?topic=2852.msg6649#msg6649 
 
Windows 10 compatibility issue :
http://windowsten.info/forum/compatibility/software-compatibility/304-teamviewer
 
I did try the fix proposed by Rafail in the second thread (HKLM\SOFTWARE\Wow6432Node\TeamViewer\DisableDuplicationAPI=1), restarted TeamViewer on the host and it looks like the problem is fixed i.e. I can connect to laptop#2 when the lid is closed and display off.
 
Thanks to Rafail for the tip !

matt

  • Hero Member
  • *****
  • Posts: 904
Could this be due to the graphics card?
I'd think that a likely cause

libove

  • Newbie
  • *
  • Posts: 5
Re: "Screen cannot be captured at the moment" error when host display is off
« Reply #2 on: December 30, 2016, 12:20:22 AM »
I may have found a solution, at least for certain hardware configurations.

I have exactly the case which the original poster reported with his laptop #2 - using TeamViewer v9.4.41110 to remote into my new ThinkPad P50 running Windows 10 Enterprise 64-bit (also with the same TeamViewer v9.0.41110 version) works fine, except that when the laptop's lid is closed it will blink the "The screen cannot be captured..." message on and every off every several seconds. There are brief moments, when the "The screen cannot be captured..." message is displaying, that keystrokes will not be forwarded to the remote ThinkPad P50, though mousestrokes do all seem to stay queued and get through. It's not entirely unusable, but it's not usable either.

I tried the DisableDuplicationAPI Registry setting, to no effect in my case.

Opening the remote ThinkPad's display stops the "The screen cannot be captured..." message from displaying and TeamViewer works normally, until the lid is closed again which causes the message to start blinking every several seconds again.

This particular ThinkPad P50 has built-in NVIDIA Quadro M 1000M discrete graphics along with the on-CPU (Core i7-6700HQ) Intel HD Graphics 530. Each program may use one or the other GPU depending on program preferences, user configurations, and system defaults, as part of power-saving vs performance balancing.

I had a theory, that which graphics processor was being used by TeamViewer might have an effect on this problem:
I exited TeamViewer including stopping the "TeamViewer 9" service, then navigated to the TeamViewer Program Files and ran teamviewer.exe with the context option to use the discrete graphics. This made no difference. (I later realised that teamviewer.exe is the user interface; the two tv_*.exe programs I'm not sure exactly what they do; and it is teamviewer_desktop.exe which actually runs the graphics for the remote session).

I looked further; using Process Explorer (procexp.exe) it seems that the TeamViewer service process TeamViewer.exe does not use any graphics at all. So I looked for other TeamViewer processes. I found tv_w32.exe and tv_x64.exe. These also show zero GPU activity in the Process Explorer process details GPU Graph tab. The last TeamViewer proces, TeamViewer_Desktop.exe shows GPU activity, on the System GPU, which I presume is the Intel HD built-in graphics.

So I set TeamViewer_Desktop.exe to default to using discrete NVIDIA graphics, as follows:
I n the NVIDIA Control Panel application, 3D Settings -> Manage 3D Settings, Program Settings tab, Add and browse for C:\Program Files (x86)\TeamViewer\Version9\TeamViewer_Desktop.exe, and select the NVIDIA GPU as the preferred graphics processor for this program.

I restarted all TeamViewer processes, and the blinking "Screen cannot be captured at the moment..." problem seems to have gone away! including after a full reboot with the notebook's lid closed the whole time.

I hope that a) this fix sticks for me, and that b) this is useful to others.
« Last Edit: December 30, 2016, 12:22:49 AM by libove »