我在MFC中工作,我试图捕获桌面的bmp。 我正在使用GetDC(NULL)来做到这一点,但它似乎忽略了特殊的蒙皮窗口。它似乎忽略使用UpdateLayeredWindow绘制的窗口。这种行为似乎只发生在Vista x64和XP上。我也尝试过使用桌面HWND的GetWindowDC,但结果是一样的。屏幕截图忽略了一些窗口
注意: 1)打印屏幕的作品。 2)在Vista上,如果我启用Aero屏幕捕捉是好的,会出现“特殊”窗口。所以在Vista上它只发生在Aero被禁用时。
想法?
谢谢。
我在MFC中工作,我试图捕获桌面的bmp。 我正在使用GetDC(NULL)来做到这一点,但它似乎忽略了特殊的蒙皮窗口。它似乎忽略使用UpdateLayeredWindow绘制的窗口。这种行为似乎只发生在Vista x64和XP上。我也尝试过使用桌面HWND的GetWindowDC,但结果是一样的。屏幕截图忽略了一些窗口
注意: 1)打印屏幕的作品。 2)在Vista上,如果我启用Aero屏幕捕捉是好的,会出现“特殊”窗口。所以在Vista上它只发生在Aero被禁用时。
想法?
谢谢。
当调用的BitBlt(),添加CAPTUREBLT标志“捕获”分层窗口
这可能是由于桌面组成。在Vista中关闭Aero桌面组合并再次尝试。
对我来说它没有捕捉视频 – 2009-07-28 10:57:15
有趣...是否按打印屏幕执行相同? – sharptooth 2009-07-28 11:01:41
@Umair Ahmed:我认为Print Screen本身不会捕捉视频 – 2009-07-28 11:20:33