Re: Where to start with mirror display driver ? Confu sed :|

This would work fine, but the trouble is that remote-desktop type apps
need to 1) copy the smallest rectangle they can, and 2) copy as soon as
something has changed. Blitting the entire desktop at 60 Hz isn’t
feasible.

I have to wonder – why do this, when there is so much prior art? NT
provides RDP, there’s VNC, and probably a few others.

– arlie

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Moreira, Alberto
Sent: Thursday, November 13, 2003 10:11 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Re: Where to start with mirror display driver ? Confu
sed :expressionless:

I may be barking up the wrong tree, but can’t this be done easier from
user mode ? Just get a DC, map it to the whole screen, and do a BitBlt
to your own surface. If I remember correctly, VB even has a function, I
believe it’s called “DumpScreen” or something in that direction, that
does it for you.

Alberto.

Thanks everybody for useful replies but I think you are missing some
points:

  1. BitBlt and ALL GDI functions wont work, simply because the service will
    be supplying display data at all times across user desktops, and if you
    ever tried to a) BitBlt b) LockSurface you would know that these routines
    need user mode parameters, which become invalid when user locks the
    workstation or logs off. My service will be monitoring ALL that is
    happening on the screen, regardless of users or workstation locked state.

  2. RDP, and VNC, even though service applications, work under user mode,
    and are unable to monitor physical display data, only logical user
    desktops. I peeked into VNC source.

Thus my approach still points to possibility of writing a kernel mode
driver.

Thanks !

I agree. My friend was doing that Copying the entire framebuffer. I did
a mirror driver for NT and and accessiblity dll for 95/98 where he only
copied what had changed. That worked much better. When he was copying
the whole screen it was very bad.

Using PC Anywhere technology or RDP “Remote Desktop” is much better I
agree.

I agree copying the screen is slow.