What is the fastest way to capture a screenshot in Windows? A driver? Using DirectX?
Asked
Active
Viewed 1,492 times
0

Cody Gray - on strike
- 239,200
- 50
- 490
- 574

Andriy Tylychko
- 15,967
- 6
- 64
- 112
-
possible duplicate of [is screenshotting by DirectDraw faster than GDI way?](http://stackoverflow.com/questions/4975312/is-screenshotting-by-directdraw-faster-than-gdi-way) – David Heffernan Feb 12 '11 at 00:20
-
2Do you want an answer to this question, or your other identical one http://stackoverflow.com/questions/4975312/is-screenshotting-by-directdraw-faster-than-gdi-way – David Heffernan Feb 12 '11 at 00:21
-
actually I wanted to keep each of them completely clear and well focused. my case is more complicated than both these questions – Andriy Tylychko Feb 12 '11 at 00:23
-
Sweet. I've never done a cyclic "vote to close" before. – Feb 12 '11 at 00:24
-
Why do you care about the difference between DirectDraw vs GDI if *neither* is the fastest solution? It seems that this question completely encompasses your second one. (No, I didn't post this comment to both questions.) – Cody Gray - on strike Feb 12 '11 at 06:39
2 Answers
1
A while back I timed the win32 api and the .net wrapper. Here is the complete blog post:
http://blog.bobcravens.com/2009/04/fastest-screen-capture-using-c-vista-vs-win7/
The upshot is that the .net wrapper in the latest version of Win7 is as fast as the native win32 api. I have never tried DirectX or the other options. The .net wrapper was fast enough for my purpose. I have heard that accessing the video drivers (like VNC does) is the fastest. I have nothing to back that up, but it seems reasonable.
Bob

rcravens
- 8,320
- 2
- 33
- 26
1
The fastest way would be to read mapped region of video card memory I think... Just an idea, never tried that.

mip
- 8,355
- 6
- 53
- 72