I said, I know there are complex methods of doing it. However, there is no easy way of taking a 'snapshot' given a HWND, as you suggested. That is the kind of solution I was looking for. After reading the article i mentioned, and Necroman's posts, I realise that no such solution exists.

The article i mentioned in my post was written by the author of what I believe to be a well respected book on Windows Graphics Programming I'm sure if there was another method he would of mentioned it.