任何Win32 API获取截图?

时间:2010-04-09 11:17:20

标签: winapi visual-c++ screenshot windows

我正在编写一个应用程序,需要自动拍摄屏幕截图(就像按PrintScreen按钮一样)。所以请建议我如何完成这项工作。原始的24位BMP图像就足够了。

请注意:我的应用程序是在C中,因此可以从我的代码中调用的任何win32 API都是我正在寻找的。

(有时回来我得到了codeproject的示例代码,用于获取屏幕截图但鼠标指针用户在拍摄屏幕时闪烁。由于多次拍摄,这看起来很刺激用户,所以我不喜欢不希望鼠标指针闪烁!)

2 个答案:

答案 0 :(得分:12)

GetDC(NULL) + BitBlt()

要捕获半透明/ alpha /分层窗口,必须将CAPTUREBLT标记传递给BitBlt,如果这样做,光标会闪烁,请阅读this technet article以找出原因。< / p>

在NT6 +上,你可以使用Magnification API来做你想做的事。

答案 1 :(得分:7)