桌面窗口管理器捕获整个屏幕

时间:2009-11-26 00:22:28

标签: windows-7 windows-vista directx aero dwm

我想知道是否有人可以给我一个如何在Windows Vista / 7中捕获整个屏幕的起点?我知道如何在以前版本的Windows中执行此操作,但是真的希望将所有内容保留在D3D堆栈中,而无需使用GDI / BltBit调用。

我意识到如果您使用DWM API获得HWND,您可以获得给定窗口的实时缩略图,但是如何获得整个桌面的“缩略图”?

谢谢,

亚历

1 个答案:

答案 0 :(得分:2)

不幸的是,执行此操作的函数位于dwmapi.dll中,并且未记录。有人想出了如何对get the directx surface of another window in vista进行操作,并使用它来捕获屏幕,但这些功能在Windows 7上不起作用。

你能做的最好的事情就是得到各个窗户的缩略图,至少,这是我发现的。