I wish to get a snapshot of the screen in the most efficient manner. This will be used in a program that runs in the background when other computationally intense programs (games) are running, and I do not want to impact on their performance (too much). The screenshot would occur multiple (10+) times a second so I want it to be as fast as possible.
Ideally I am looking for Delphi code, but am open to whatever will be best for this. I found the first function of this which works well, can anyone confirm/debunk that this is the fastest method to do this?
In addition, certain applications grab the entire screen (eg skyrim) and I think they bypass the Window system used in the above. The above link cannot get those images. Does anyone have an idea as to how to grab them?