c – 屏幕截图忽略了一些窗口

我在MFC工作,我正在尝试捕获桌面的bmp.
我使用GetDC(NULL)来做到这一点,但它似乎忽略了特殊的蒙皮窗口.它似乎忽略了使用UpdateLayeredWindow绘制的窗口.这种行为似乎只发生在Vista x64和XP上.我也尝试过使用桌面HWND的GetWindowDC,结果是一样的.

笔记:
  1)打印屏幕工作.
  2)在Vista上,如果我启用Aero,屏幕截图就可以了,会出现“特殊”窗口.因此,在Vista上,只有在Aero被禁用时才会发生.

一个想法?

谢谢.

最佳答案
调用BitBlt()时,添加CAPTUREBLT标志以“捕获”分层窗口

转载注明原文:c – 屏幕截图忽略了一些窗口 - 代码日志