2009-07-28 69 views
5

我在MFC中工作,我試圖捕獲桌面的bmp。 我正在使用GetDC(NULL)來做到這一點,但它似乎忽略了特殊的蒙皮窗口。它似乎忽略使用UpdateLayeredWindow繪製的窗口。這種行爲似乎只發生在Vista x64和XP上。我也嘗試過使用桌面HWND的GetWindowDC,但結果是一樣的。屏幕截圖忽略了一些窗口

注意: 1)打印屏幕的作品。 2)在Vista上,如果我啓用Aero屏幕捕捉是好的,會出現「特殊」窗口。所以在Vista上它只發生在Aero被禁用時。

想法?

謝謝。

+0

對我來說它沒有捕捉視頻 – 2009-07-28 10:57:15

+0

有趣...是否按打印屏幕執行相同? – sharptooth 2009-07-28 11:01:41

+0

@Umair Ahmed:我認爲Print Screen本身不會捕捉視頻 – 2009-07-28 11:20:33

回答

6

當調用的BitBlt(),添加CAPTUREBLT標誌「捕獲」分層窗口

1

這可能是由於桌面組成。在Vista中關閉Aero桌面組合並再次嘗試。