捕获每一个变化的Bit?不会吧。干脆用一个Timer捕获算了。否则系统不慢的要4?

解决方案 »

  1.   

    小弟是在做一个远程控制的软件,前久用了PC-ANYWHERE 和 冰河来测试了一下,发现PC-ANYWHERE在INTERNET上还可以运行得比较流畅,冰河却不行,在进行网络监视和系统监视中发现冰河是利用TIMER来捕获屏幕(全屏),传送数据,系统资源占用很多,面PC-ANYWHERE却是要屏幕发生变化才会占用CPU,而且随屏幕变化的程度其占用的程度不同,网络中的数据量不同,所以小弟想它是可能是在写屏幕DC的API中挂了钩子,就像上面提到的SETDIBTODEVICE这个API函数,它有参数是写屏幕的区域.
    请大虾指点迷津,我对WINDOWS的底层知之甚少....请帮忙...
      

  2.   

    如果hook了所有与draw, outtext 之类的api,系统速度会明显降低的。
    不知道Lotes的Screencamra是怎样实现取屏的...
      

  3.   

    今天发现PC-ANYWHERE在注册表中注册了VXD,系统监视中发现运行程序后页出错大增,怀疑其是不是将视频内存所在页的“是否在内存位“置为0,从而产生异常转到自己的VXD执行将对视频内存的数据写入截获。猜想,我对VXD不懂