屏幕捕获程序(WPF 4)



我有一个关于屏幕捕获程序的问题。我有一个WPF4应用程序,它需要能够读取位于同一网络上另一台计算机上的屏幕,并在其中查找更改。我以前从未这样做过,所以我希望有人能给我一些指示或为我指明正确的方向。

非常感谢。

Tim

是否需要检测任何更改?您可以使用钩子,只需少量更改;

http://msdn.microsoft.com/en-us/library/ms644991%28VS.85%29.aspx(ShellProc回调函数)

它会通知你是否有窗口移动,是否有东西被重新绘制。我不确定它对你有多有用,但你可以看看。

还有更多的方法:如何检测窗口内容何时更改

如果您只需要内容是否发生更改的信息,可以在"另一台计算机"上进行处理。

1) 设置插座连接

2) 使彼此进行通信

3) 现在,实际的代码应该在Win32(C++)中完成,以获得最佳性能。但是你可以用C#来实现。只要在C#中搜索快照,你就会发现一些东西。

4) 要真正进行比较,有很多方法。一种方法是与最后一张图片逐像素进行比较。将图像拆分为COMPUTER_PROCESSORS-1线程并比较像素。

或者,您可以运行使用GPU着色器,这可能使其比CPU方法更快。

最新更新