2010-06-18 3 views
2

Я хочу сделать проект для моего последнего года в колледже.
Так кто-то предложили мне сделать удаленный рабочий стол в С.
Теперь я знаю, основные функции сокетов для окон в C, т.е. я знаю, как сделать
эха-сервера в C.
Но я не знаю, что делать дальше , Я искал в интернете, но не нашел
что-то информативное.
Может ли кто-нибудь предложить мне, как подойти с этой точки ... любой учебник ... или любой источник?Проект удаленного рабочего стола в C

+3

: «Я знаю, как сделать эхо-сервер в C», я рекомендовал бы что-то scosch менее сложным. – KevinDTimm

+0

У вас есть конкретная целевая ОС? –

+0

@KevinDTimm - существует существующий открытый код для изучения этого, его не из сферы выполнимости. Кроме того, «выбрать протокол из реализации» - отличное упражнение. –

ответ

6

Я думаю, что это способно. Для проекта колледжа вам не нужно иметь что-то сложное и полнофункциональное, как VNC. По-моему, даже продемонстрировать простое управление клавиатурой и мышью и обратную связь с экраном было бы достаточно, и это вполне доступно.

Если вы делаете все с нуля и используете Win32, вы можете получить удаленный экран, используя обычный пример «printscreen» по всему Интернету. http://www.codeproject.com/KB/cpp/Screen_Capture__Win32_.aspx имеет это, для одного. Затем вы можете сжать изображение с помощью сторонней библиотеки или просто отправить его raw; это было бы не очень эффективно, но это все равно было бы жизнеспособной демонстрацией.

Помимо удаленного доступа к экранным данным и отображения их в локальном окне, вам необходимо прослушать локальные сообщения окна для событий мыши и клавиатуры, отправить их на удаленный хост и затем воспроизвести их. http://msdn.microsoft.com/en-us/library/ms646310%28VS.85%29.aspx, вероятно, сделает это за вас.

+0

Я согласен с этим, хотя для проекта колледжа вам нужно сделать что-то гораздо более важное, чем просто копировать и вставлять codeproject. Но это может дать вам хорошую идею. – BobbyShaftoe

0

Для отправки изображения экрана я бы, вероятно, использовал rtp. JRTPLIB действительно удобен для этого.

И да, как говорит КевинДимм, эхо-сервер - самая простая часть.

0

Check tightvnc TightVNC - это бесплатный пакет программного обеспечения для дистанционного управления. Исходный код также доступен.

0

KevinDTimm вполне может быть прав, написав RDP-клиент будет довольно значительным начинанием. Чтобы дать вам некоторую идею, текущая спецификация, доступная в верхней части this page, составляет 419 страниц и включает ссылки на несколько дополнительных документов для конкретных аспектов RDP, таких как переадресация аудио и буфер обмена.

+0

Да, но это для полного удаленного рабочего стола. Для проекта колледжа вы можете просто опустить такие вещи, как перенаправление аудио. – BobbyShaftoe

Смежные вопросы