Вопрос

Если в результате каких-либо изменений я захочу разработать свой собственный инструмент удаленной помощи / совместного использования экрана для включения в мою собственную CRM, куда мне следует обратиться?

Я ничего не понимаю в общении, но я бы хотел вовлечь себя в такую идею.Мой вопрос заключается в том, каковы базовые знания и базовая структура для создания ЛогМеЙн/Второй пилот/etc продукт?

Я помню, Джоэл рассказывал о втором пилоте в одном подкасте (несколько лет назад), что он использовал блестящего парня для разработки всего протокола на C ++...

есть какие-нибудь идеи о том, как это сделать, или есть ли открытый API, который ждет меня?

Это было полезно?

Решение

Пожалуйста, ознакомьтесь с этой статьей, озаглавленной: Как работает VNC, Fog Creek Copilot и другое программное обеспечение для дистанционного управления.

Я приведу здесь некоторые дополнительные подробности из того, что говорится в этом сообщении в блоге, но это более конкретно относится к исходному коду Fog Creek Copilot.Все эти данные были взяты из просмотра исходного кода.

По сути, Copilot не был написан с нуля на C ++, но вместо этого он был создан на основе GPL'ed TightVNC.Да, это означает, что основной источник второго пилота также должен быть предоставлен.Вы можете получить Исходный код второго пилота Fog Creek здесь.И, насколько я понимаю, вы могли бы создать свое решение на основе исходного кода этого проекта, если бы вы также сделали его GPL.

Проект разделен на версию для Mac и версию для Windows.Версия для Mac встроена в objective C, а версия для Windows встроена в Win32 C ++ (не MFC).Для версии Windows существует вспомогательное решение, созданное в версии VS 2008, и хост-решение (хост - это человек, которому оказывается помощь), созданное в версии VS 2008.Я думаю, что они не использовали Qt от Trolltech из-за большого размера ссылок, для них было важно сохранить загрузку очень маленькой, поскольку изначально она должна была загружаться всеми, кто кому-то помогал, и всем, кто нуждался в помощи каждый раз.

Не существует конфигураций x64 или IA64, поэтому весь код в Windows выполняется только как процесс x86.Он может запускаться на 64-разрядной Windows, хотя и через WOW64, точно так же, как и любой другой 32-разрядный процесс.

Как я понимаю, разработка по большей части велась с хостом, работающим на виртуальной машине.Разработка Помощника производилась на их рабочем столе.

Исходный код Copilot использует boost 1.38 и несколько других сторонних библиотек.Эти библиотеки включают STUNT для обхода NAT, MatrixSSL, libntlm (Библиотека для аутентификации NTLM от Microsoft) и omnithread (библиотека потоков и синхронизации).

По большей части он использует сокеты в стиле bsd, но у него также есть некоторый сетевой код в boost::asio.Это проблематично, потому что в boost::asio 1.38 есть много ошибок, которые исправлены в boost 1.40.Проект также имеет Windows hook dll для подключения клавиатуры, мыши и других сообщений Windows на хосте.

Существует проект оболочки, который не похож на оболочку Windows, но который в основном содержит 3 двоичных файла:хост, удаляет и подключает dll.Он извлекает их.

Чего они не выдают, так это исходного кода для Reflector и веб-сайта, который, как я понимаю из некоторых сообщений в блоге на projectaardvark.com, они оба на C #, Все остальное на C ++.Назначение отражателя - помогать в обходе NAT.Новый блог, который заменяет projectaardvark.com кстати, называется Воздушное сообщение.

VNC отключен от протокола удаленного буфера кадров.Сам протокол RFB не так уж сложен, если у вас большой опыт работы с протоколами.

Другие советы

Взгляните на программы VNC с открытым исходным кодом.Они позволяют создавать защищенные паролем скриншоты и просматривать

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

Я надеюсь VNC библиотеки и приложения помогают.Они используются в Windows и различных системах Unix.

Вы могли бы взглянуть на элемент управления ActiveX удаленного рабочего стола.В этом случае протокол является RPC (хорошо документированным).Кроме того, как коммуникационный, так и удаленный уровни пользовательского интерфейса выполняются за вас, вам просто нужно написать какой-нибудь простой код оболочки пользовательского интерфейса.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top