毕业设计想做一个屏幕传输的软件,上网查了下这方面的资料,都说基于Mirror驱动的屏幕截取速度最快,可是找了好久都没找到,这种技术的截屏原理,是调用驱动给应用程序的接口截屏还是装了驱动后直接使用普通的截屏方法呢,很迷惑。还有如何截获屏幕的区域变化呢总之好像有很多问题,哪位有这方面经验的高手能指点小弟一二,不胜感激!!!

解决方案 »

  1.   

    在网上找资料了吗?我看你是没有好好找,MIRROR驱动的资料网上还是有很多的,但驱动的实现,没有现成的代码流出来,SDK的倒是有,DFMIRROR驱动就是一个免费的MIRROR驱动,MIRROR驱动也就是所谓的,镜像显示驱动程序,所有屏幕的绘制,都会COPY一份给MIRROR驱动,MSDN上有一个简单的MIRROR驱动框架可以参考下,其实MIRROR驱动的通用性不是很好,建议使用GDI方式来做,GDI方式还是有很多算法的,像分块,隔行扫描,矩形比较,也以达到很快的速度.
      

  2.   

    MIRROR驱动的关键是在于,驱动层跟应用层的数据交换,驱动是运行在R0级,而应用是运行在R3级别,所以他们不能直接的访问对方的内存,要通过一些技术来实现,还有MIRROR驱动在开启视频硬件加速的情况下,是截不到视频画面的..