0

I have a question about screen capture programs. I have a WPF 4 application that needs to be able to read a screen that is located on another computer on the same network and look for changes in it. I have never had to do that before, so I am hoping that someone can give me some instructions or point me in the right direction.

Thank you very much.

Tim

Rushman
  • 79
  • 1
  • 1
  • 8

1 Answers1

0

Do you need to detect ANY change? You can use hook with few changes;

http://msdn.microsoft.com/en-us/library/ms644991%28VS.85%29.aspx (ShellProc callback function)

it will notify you about if some window moved, if something was redrawn. I am not sure how useful it will be to you, but you can check it out.

There is also more ways: How to detect when window content has changed

If you only need the information that if the content has changed or not, possibily do the processing on "another computer".

1) Set up socket connection

2) Make eachother communicate

3) Now the actual code should be done in Win32(C++) for best performance. However you can do it with C#. Just google for snapshotting in C# and you should find something.

4) To actually perform comparision, there are many ways. One way is pixel by pixel comparasion with last picture. Split image into COMPUTER_PROCESSORS-1 threads and compare pixels.

Alternatively you can run use GPU shaders which might make it faster than CPU approach.

Community
  • 1
  • 1
Erti-Chris Eelmaa
  • 25,338
  • 6
  • 61
  • 78