Pergunta

Se, por qualquer mudança que eu quero desenvolver minha própria ferramenta remota compartilhamento de assistência / tela para incluir no meu próprio CRM, onde devo ir?

Eu entendo nada sobre comunicação, mas eu gostaria de me envolver em tal idéia. A minha pergunta é, qual o conhecimento básico e estrutura básica para criar uma LogMeIn / CoPilot / etc?

Lembro-me de Joel falou sobre CoPilot em um PodCast (há alguns anos) que ele usou um companheiro brilhante para desenvolver todo o protocolo em C ++ ...

Algumas ideias sobre como fazer isso, ou se houver uma API aberta lá fora esperando por mim?

Foi útil?

Solução

Por favor, consulte este artigo intitulado: Como VNC, Fog Creek Copilot e outros softwares de controle remoto funciona .

I irá fornecer algum detalhe adicional aqui, desde que esse post diz, mas que é mais específico para o código-fonte Fog Creek Copilot. Todos esses dados foi tirado de olhar para o código-fonte.

Basicamente Co-piloto não foi escrito a partir do zero em C ++, mas em vez disso, foi construído fora da GPL'ed TightVNC. Sim, isto significa que a principal fonte do co-piloto também deve ser dado. Você pode obter o Fog Creek código fonte co-piloto aqui . E, tanto quanto eu entendo, você poderia construir a sua solução fora do código-fonte deste projeto, desde que você fez isso GPL também.

O projeto é dividido em uma versão para Mac e uma versão do Windows. A versão Mac é construído em C objetiva e a versão do Windows é construído em Win32 C ++ (não MFC). Para a versão de janelas há uma solução Helper feita em VS 2008 e uma solução Anfitrião (o anfitrião é a pessoa que está sendo ajudado) feita em VS 2008. Eu acho que eles não usar Qt da Trolltech por causa de sua grande tamanho de ligação, que era importante a eles para manter o download muito pequeno, uma vez que teve que originalmente ser baixado por todos ajudando alguém e todos precisando de ajuda cada vez.

Não há x64 nem IA64 configurações, então todo o código no Windows é executado somente como um processo x86. Ele pode ser executado em um Windows de 64 bits embora através WOW64 como qualquer outro processo de 32 bits pode usar.

Como eu entendo, o desenvolvimento foi feito com o host executando em uma máquina virtual em sua maior parte. O desenvolvimento do Helper foi feito em seu desktop.

Os usos de código fonte Copilot impulsionar 1,38, e várias outras bibliotecas 3o partido. Essas bibliotecas incluem CONLUIO para passagem NAT, MatrixSSL, libntlm (Biblioteca para autenticação NTLM da Microsoft) e omnithread (threading e biblioteca de sincronização).

Para a maior parte utiliza soquetes BSD, mas também tem algum código de rede em boost :: asio. Isso é problemático porque boost :: asio 1,38 tem um monte de erros nele que são corrigidos no impulso 1,40. O projeto tem um gancho de dll janelas, assim como para teclado gancho, mouse e outras mensagens do Windows no host.

Há um projeto shell que não é como as janelas Shell, mas que contém basicamente 3 binários: o anfitrião, deleter e ganchos DLL. Ele extrai estes.

O que eles não dão para fora é o código fonte para o reflector e website, que como eu entendo de alguns posts sobre projectaardvark. com , eles estão ambos em C #, Tudo o resto em C ++. O objetivo do refletor é para ajudar na travessia de NAT. O novo blog que substitui projectaardvark.com pela forma como é chamado Tráfego aéreo .

VNC é bassed fora do protocolo framebuffer remoto. O próprio protocolo RFB não é tão difícil se você tem um monte de experiência de protocolo.

Outras dicas

Tenha um olhar para os programas VNC de código aberto. Eles permitem screen sharing e visualização protegido por senha

http://www.realvnc.com/vnc/index.html http://en.wikipedia.org/wiki/Virtual_Network_Computing http://libvncserver.sourceforge.net/

Espero VNC bibliotecas e aplicativos de ajuda. Eles são usados ??em vários sistemas Windows e UNIX.

Você poderia dar uma olhada no controle de desktop remoto ActiveX. Nesse caso, o protocolo é RPC (bem documentados). Além disso ambas as comunicações e camadas de interface do usuário remotas são feitas para você, você só tem que escrever algum código shell UI simples.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top