|
From: kidilan.ehiravan on 21 May 2008 01:36 Hello, I have been assigned to develop an application like VNC, for desktop sharing with multiple monitor support. Currenly we have a prototype using the hook mechanism. Now I am assigned to redo it using the video mirror driver. As I am quite new to this topic, i need your help to complete the task in the stipulated time. So far, I was able to install the sample mirror driver in DDK. The debug log indicates, functions like DrvCopyBits, DrvBitBlt etc were invoked in the mirror .dll driver. What I want to accomplish is 1- How to get the full screen data using the morror driver 2- Is there a way to get the screen update from the driver. ( in the prototype using Hook, we get the updated RECTs from hook callback. So we can capture data on that RECT by comparing two full screens) As such, my intensin is to get the screen data ( full screen or updates) and compress it and send to the remote machine over an socket, whre the desktop is being viewed. Please let me know how i can achieve this. Also, suggest some book or info where I could get a clear idea of the functionlity of this system. I have posted this in another group also.. pls excuse me. Thanks Kidilan
From: Eugene Sukhodolin on 21 May 2008 23:27 > What I want to accomplish is > 1- How to get the full screen data using the morror driver > 2- Is there a way to get the screen update from the driver. > ( in the prototype using Hook, we get the updated RECTs from hook > callback. > So we can capture data on that RECT by comparing two full screens) It will be damn slow. It's not a good idea to compare two FULL screens each time. > As such, my intensin is to get the screen data ( full screen or > updates) and compress it and send to the remote machine over an > socket, whre the desktop is being viewed. Please let me know how i > can > achieve this. > Also, suggest some book or info where I could get a clear idea of > the > functionlity of this system. Did you review existing open-source projects like TightVNC (http://www.tightvnc.org)? This will give you an idea how it works in general. -- Sincerely, Eugene Sukhodolin www.demoforge.com
From: Tim Roberts on 22 May 2008 01:48 kidilan.ehiravan(a)gmail.com wrote: > >I have been assigned to develop an application like VNC, for desktop >sharing with multiple monitor support. Currenly we have a prototype >using the hook mechanism. Now I am assigned to redo it using the video >mirror driver. >As I am quite new to this topic, i need your help to complete the task >in the stipulated time. You're the 3rd or 4th person to do this in the last few months. You need to check the archives of this and the NTDEV list. >So far, I was able to install the sample mirror driver in DDK. The >debug log indicates, functions like DrvCopyBits, DrvBitBlt etc were >invoked in the mirror .dll driver. > >What I want to accomplish is >1- How to get the full screen data using the morror driver The mirror driver maintains its own surface. It doesn't have access to the main display driver. >2- Is there a way to get the screen update from the driver. > ( in the prototype using Hook, we get the updated RECTs from hook >callback. > So we can capture data on that RECT by comparing two full screens) You own the mirror driver, and hence its surface, so you know when stuff gets drawn. >As such, my intensin is to get the screen data ( full screen or >updates) and compress it and send to the remote machine over an >socket, whre the desktop is being viewed. Please let me know how i can >achieve this. It's amazing to me that people expect to develop this kind of thing in a few weeks, completely ignoring the fact that VNC and Remote Desktop are the result of many years of development effort. DemoForge has developed a fully functional mirror driver designed for exactly this purpose, called DFMirage. It is, in fact, the mirror driver used by TightVNC. http://www.demoforge.com/dfmirage.htm -- Tim Roberts, timr(a)probo.com Providenza & Boekelheide, Inc.
|
Pages: 1 Prev: Stopping a high priority thread Next: Problem with WinDbg |