Screengrab of running game

Jul 1, 2013 at 8:13 PM
Greetings all,

I am attempting to write a monitoring app to watch for events that happen in a game running on my machine. Since the Game itself doesn't publish an API allowing you to do this, i figured the only way to accomplish this would be to periodically do a screen cap and analyze it to see what has changed since the last screen cap.

Unfortunately, though I've tried a bunch of different (windows API, CLR drawing, GDI+) ways to do it, including with SharpGL, all I get is a image every time. I can screen cap the screen if game isn't currently displayed just fine. But as soon as the game is on the monitor all I get is an image the size of my screen with nothing but black pixels.

I want to be able to do the capture whether or not the game is currently on screen if that is possible. I do have a pointer to the process's window in the form of a IntPtr if that helps any. Since I don't see any posts on here dealing with this, can anyone kick me in the right direction? I seem to just keep going in a circle between google and visual studio 2012 and getting the same results.

Thank you for any assistance,