какой Windows API мне понадобится для создания инструмента удаленного рабочего стола, такого как TeamViewer?

судя по низкой пропускной способности, я предполагаю, что TeamViewer не просто передает экран попиксельно. Итак, какой API будет использовать такой инструмент для получения графических функций для эффективной передачи? Существуют ли приложения с открытым исходным кодом, такие как «TeamViewer для бедняков», демонстрирующие это в коде?

ETA: я не прошу «конкретный API» для «сложной задачи». Мой вопрос сводится к тому, «как работает TeamViewer с точки зрения получения графической информации из Windows?»


person EndangeringSpecies    schedule 25.04.2012    source источник


Ответы (4)


Вы можете взглянуть на VNC. Но просить конкретный API для выполнения довольно сложной задачи, вероятно, очень бесполезно.

person Joey    schedule 25.04.2012

Обратите внимание на API общего доступа к рабочему столу Windows.

person Dan Ports    schedule 25.04.2012

Вы можете использовать Win VNC http://www.realvnc.com/ для загрузки и использования их API.

person HGK    schedule 25.04.2012
comment
спасибо, это несколько относится к моему вопросу. Я предполагаю, что заранее у меня нет никакого способа определить, является ли то, что делает .net VNC, тем же, что делают TeamViewer и Citrix, но, по крайней мере, это явно шаг в правильном направлении. - person EndangeringSpecies; 25.04.2012

хорошо, это не прямой ответ на мой вопрос, но тем не менее интересное обсуждение вопроса Как это TeamViewer так быстро? . ОП задает вопрос, аналогичный моему, и предоставляет свой эмпирический анализ конкурирующих систем. Он говорит, что удаленный рабочий стол Windows значительно быстрее, чем VNC, предположительно потому, что он передает команды рисования Windows, а не сравнение растровых изображений, и он также говорит, что TeamViewer на удивление быстрее, чем даже это, по причинам, которые он хочет понять.

person EndangeringSpecies    schedule 25.04.2012