I want a screenshot of html part (eg: class Chrome_RenderWidgetHostHWND) of a application that use CEF to render web pages.
Tried using BitBlt
and PrintWindow
but only is possible capture a black screen because the application that i want capture is using hardware acceleration.
This is a old trouble that was solved on tradicional Google Chrome navigator disabling the option that say: use hardware acceleration when avaiable, changing somes settings of a json file of Google Chrome.
Then i want know if exist some possibility of make the same,in this case prevent or disable this resource to a determinated application that use CEF?
All that i saw relative to this possibility was only to disable inside of application that use CEF, not outside they.
Thank by any relative suggestion or solution!
If you can modify the source code of that CEF app you can easily disable hardware acceleration.
In case you use CEF4Delphi you should set GlobalCEFApp.EnableGPU to FALSE and in case of DCEF3 you can add the --disable-gpu command line switch inside the CefOnBeforeCommandLineProcessing procedure.
If you can't modify the source code but you can modify the command line, then execute that application with the --disable-gpu command line like this :
MyApp.exe --disable-gpu
If all that fails, you can always try to execute that application inside a virtual machine or in a PC with a blacklisted graphics card.