当Windows被locking时取得桌面屏幕截图(Win + L)

我想在Windowslocking的情况下(Win + L)截取桌面。 标准方法制作黑屏,像素代码:

COLORREF color = GetPixel(hdc, x, y); 

等于-1。 用户模式程序和服务都不能捕获有用的图像。 有任何想法吗?

当桌面没有实际显示在显示器上时, GetPixelBitBlt将不起作用。

PrintWindow捕获单个窗口可能会有一些运气。 但是,并不是所有的应用程序都以相同的方式响应PrintWindow ,所以你可能会看到毛刺和/或黑度。 您还需要分别捕获每个窗口。