I am looking for detailed technical information on technologies used
in desktop screen sharing, particularly those used in dynamic
deployment environments. An excellent example of this type of software
is www.gotoassist.com, which provides a web-deployed screen sharing
client for technical support purposes. I do not want information on
embedded OS services or protocols for remote access, such as RDP
(commonly known as Remote Desktop in Windows XP).
As a computer science student, I would like to write a (smaller scale)
similar system to gain experience in this area. However, I do not know
where to begin looking for information on how such screen capturing is
done, what APIs I need to study, or what algorithms I may need to
know.
A good answer to this question may include the following:
A list of books (with ISBNs) or other articles dealing with:
--Display streaming and remote console control
--Web-based software deployment on Windows XP
--Java and/or C/C++ methods for graphics interfacing on Windows and
Linux (not graphics rendering)
Links to any code examples (ie Open source projects)
General advice as to how to structure my studies in this area
Any background information that would be helpful in this pursuit,
taking into consideration I've completed two years of a typical
computer science curriculum.
Excellent answers will provide information on more than one means of
accomplishing screen sharing. I am familiar with VNC and its related
flavors (tightvnc.org) and would prefer information on other methods
of remote control. However, detailed background information (the "hows
and whys") on VNC code would be appropriate). |