VNC / Remote support/desktop / helpdesk

Windows specific forum
PeterH
User
User
Posts: 28
Joined: Sun Apr 11, 2010 11:01 am

VNC / Remote support/desktop / helpdesk

Post by PeterH »

Hi.

I've been asked by an old friend of mine to try to create a software looking similar to TeamViewer, but TeamViewer is way too expensive currently.

I saw that "idle" made a software called Veo Remote, and I've been looking like crazy for a DLL similar to PCHelpWare (but one that has documented support even for Win7) or even a standalone application that leaves no traces, which I could then modify or build something around to act like TeamViewer. The reason TeamViewer is so good is that the executable could be hosted on the webpage, same executable for everyone, and they'd just read the numbers stated in the opened window to have the support agent connecting to them automatically.

Has anyone seen/written an open source variant similar to this? PureBasic preferrably of course, but a DLL could work just as well. I just don't want to use the metasploit vncdll.dll since it's triggered on by all the antiviruses in the world and that would make the software look bad.

I only need Windows support, and that is 2k/xp up to Win7. Older versions of Windows will just have to manage without it. Any tips would be appreciated.

Best regards, Peter.
DarkPlayer
Enthusiast
Enthusiast
Posts: 107
Joined: Thu May 06, 2010 11:36 pm

Re: VNC / Remote support/desktop / helpdesk

Post by DarkPlayer »

Hi,

first of all, i think it is a nice idea, but it is also a very advanced project. To create something like Teamviewer you have to think about the following things:
  • A driver or another fast way to capture the screen (GDI can not be used for the whole screen, it is to slow)
  • A P2P network protocol [otherwise two people behind a Router (NAT) can not use it]
  • A server which stores the IPs and initiates the P2P Connections
  • A good compression for screen data
  • and a lot more...
I do not think that there is a library which includes all these things and is free to use.

DarkPlayer
PeterH
User
User
Posts: 28
Joined: Sun Apr 11, 2010 11:01 am

Re: VNC / Remote support/desktop / helpdesk

Post by PeterH »

Yes and no.

A driver to capture the screen would absolutely be preferrable, but not necessary. One could simply reduce quality if bandwidth is an issue or if the computer won't keep up. When constructing something that is ment to be used for remote assistance, you don't need 100% realtime updates like Microsoft aims for with RDP. That's not the main purpose. You can help someone even with their computer even if you miss a frame or two. If I needed that I'd stick to PcHelpWare which has nearly everything, but I want to make people able to integrate the supportsystem, as well as customize it, into their own existing applications for whenever the user might need support. PcHelpWare also has a driver that won't install under Win7/Vista 64-bit which causes big problems, but on the other hand, it's completely free to use and no GPL license.
  • Driver would be nice, wouldn't work without admin rights, would mean that we need to be dropping a software running at kernellevel thus risking to mess up the system. Before sending a new image to the controlling computer, the previous picture should be examined so that everything looking the same as the previous screendump won't be sent. How hard this might be I have no idea.
  • P2P replaced by a custom "repeater" similar to the one UltraVNC/PcHelpWare uses, so that every organisation using the library has a central point where everyone connects. NAT solved. This too should be customizable by the programmer. This is also the "server".
  • Good compression is not the hardest part. Just need to have it fast enough.

http://www.codeproject.com/KB/IP/remotecontrol.aspx contains sourcecode that could help one halfway through. The only issue except me not being a c(++) programmer is the GPL. I love GPL but I bet some companies rather pay to avoid having to publish the entire sourcecode of their software, even if it'd just be a simple helpdeskloader using this library. When the application is of this nature, that could be risky.
Post Reply