I'm coding a prog that enables a user to remotely use a system, showing the remote desktop in a wnd that can be resized... all keyboard inputs + mouse movement and mouse clicks shall be sent per network and simulated on the remote system.
(p.s.:trojan and remote admin is a great difference )

The only thing I'm not proper sure about is the transfer of the screen picture data.

First of all i need to have a format for the transfer. Easiest seems to be b/w bitmap (8 bits per pixel), but there might be others that can save lots of network resources...I can easily take the picture data when bitblt-ing the screen to a memory dc with a bitmap of the right size and then calling getdibits.

I think about these possibilities in order to improve performance:
(1) I never transfer the whole picture. I divided the screen into x parts (relies on options) and only transfer one part at a time, logically the part which changed most (i implemented something like a checksum table)

(2) I could transfer not screen parts but lines/rows, trimming the pixels that stayed the same from last picture transfer

(3) I could enumerate the windows and then transfer the ClientRect of the current foreground Wnd.

I already wrote a local prog that uses the first method to show the screen on a small wnd...it's nice to watch so i attached it.

If you got any ideas related to the screen picture transfer please post it...
Posted on 2004-08-31 02:12:42 by Dom
Have a look at http://www.asmcommunity.net/board/index.php?topic=3365.0 , there's already been some discussion on this :)
Posted on 2004-09-01 04:36:09 by f0dder
thx f0dder, should have thought about the search function... :lol:

Posted on 2004-09-01 05:08:20 by Dom