|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Удалённый рабочий стол
Всем кто зашёл сюда привет! Тут я столкнулся с проблемой мне надо делать курсовик, а там надо видеть что происходит на мониторе другого компьютера в сети. Я подумал и решил предложить делать скрины того монитора и отправлять на управляющий, но так мне препод сказал не потянет. Как он мне сказал, можно как-то через сеть подключится к видюхе и видюха будет мне показывать тоже самое что показывает на компе из сети. Если кто-то знат как это сделать плиз поделитесь знаниями, или есть какой-то другой способ на делфи но не черз скриншоты то тоже поделитесь. буду вам очень признателен
|
#2
|
||||
|
||||
Цитата:
Стандартный способ - это действительно грубо говоря скриншоты по сети. |
#3
|
|||
|
|||
У тя препод не в фбр работает?=)
|
#4
|
|||
|
|||
Вроде, можно попросить винду передавать измененные регионы своему приложению и уже их отсылать по сети. Как - не знаю, просто слышал об этом.
|
#5
|
||||
|
||||
Цитата:
http://msdn.microsoft.com/en-us/library/ms797878.aspx Велик и могуч наш Object Pascal ! ICQ: 357-591-887 |
#6
|
|||
|
|||
Цитата:
Снять инфу с экрана удаленного компа можно только через скрины, получаемые с требуемой частотой обновления. Упрощая это выглядит так: Требуется 2 приложения: 1) Сервер (стоит на удаленном компе как фоновое приложение или служба) 2) клиент - там, где будешь смотреть. По коннекту клиента, сервер делает скриншот экрана и ставит ловушку на изменение экрана, как например в http://ldmunivanga-38.narod.ru/Codin...html#WSAF00370 По событию ловушки делается новый скрин, сжимается и передается клиенту. |
#7
|
||||
|
||||
Цитата:
Нет, препод по программированию врать не будет Да не он не имел ввиду что у видюхи есть сетевой выход как ты видимо подумал. Просто из сети идёт перехват того что высвечивается на мониторе и отправляется на другой ПК. Допустим так же прога RAdmin там ведь не скриншотами идёт передача. |
#8
|
|||
|
|||
Скорее всего имелось ввиду pcihook. Думаю, с твоими знаниями, ты реализовать не сможешь. Так что юзай стандартные вещи: захват экрана и отправка по сети. Если хочешь нормально реализовать, заказывай за деньги в соответствующей ветке.
|
#9
|
||||
|
||||
Цитата:
Если вдруг будете поднимать тему по Mirror Driver, с радостью помог бы разобраться... На этом форуме ранее я пытался поднять эту тему, но видимо разбирающихся - 0, да и всезнающий яндекс, так толком мне не смог помочь... Скриншоты передавать не тема... слишком маленький FPS ((( Последний раз редактировалось SHKIP3R, 24.09.2009 в 09:25. |
#10
|
|||
|
|||
Цитата:
Кроме того, никто не запрещал использовать сжатие пакета. ЗЫ: Тот же радмин или тимвьювер работают на скринах, попробуйте в локалке посмотреть анимированные картинки или flash (например зайти на сайт, где есть реклама), FPS будет просто пипец, а что бы отбросить все сомнения, еще и на нагрузку сети. |
#11
|
||||
|
||||
Думаю, что не все так просто с передачей картинки. Взять например картинку с 1920х1200. Без существенной потери качества и скоростью 24 кадра в сек у нас эта передача скушает примерно 6 Мб трафика в секунду, а для 100Мбит это больше 50% ресурса. Допустим, как вы говорите мы будем отлавливать только изменения по сравнению с эталонным битмапом, у вас все равно будет приличный трафик (часы обновляются, мышь двигается, пара приложений каких-нибудь добавляют еще изменений) и это в принципе статичное состояние экрана, но так-ведь редко бывает.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#12
|
|||
|
|||
1. зачем ее передавать 24 раза в сек, когда достаточно 10-15 раз в сек.
2. BMP формат жмется в 14 раз. 3. И пускай будет потеря качества (например jpg) - надо лучше - смотрите в реальный монитор, а не в удаленный ЗЫ: Посмотрите готовые аналоги - там есть все: тормоза, потеря качества, нагрузка на сеть и т.д. Последний раз редактировалось newbas, 25.09.2009 в 13:40. |
#13
|
||||
|
||||
Я в курсе про готовые аналоги. Взять скажем RemoteAdmin или DameWare. Можно на кол-ве цветов, сжатии поиграть. Да, несколько быстрее становится, но такой комфортности, как в Терминал-клиенте там нет.
А при расчете 6 Мб я как раз использовал Jpg с качеством 80% от оригинала. Ниже 23-24 кадров вы сразу почуствуете запаздывание. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#14
|
||||
|
||||
А пример реализации кода можно посмотреть в исходниках свободных программ, например, TightVNC. Такие программы обычно пишутся на С++ или Java, но можно найти и на Delphi
Кстати, при изменении небольшого количества пикселей (перемещение мыши и т.п.) задержка не ощутима даже при передаче изменений в raw (несжатом) формате. При больших изменениях частота кадров очень сильно падает (в любой проге). Например, при обновлении всего экрана 1280х1024 в tight кодировании с 16-битной цветностью и при передаче от сервера к клиенту в 3 Мбит/с частота кадров равна 2-3. Но частота кадров-далеко не главное. Мы ведь не кино смотреть собираемся РГРТУ - ФВТ - Системы Автоматизированного ПРоектирования. ت |
#15
|
||||
|
||||
Я думаю в этом ни для кого нет секрета... по поводу BMP, это как-то очень грубо получается... JPG - сильное искажение, а вот PNG, это золотая середина... потерь нет, если картинка сложная (красивые обои на рабочем столе), весом он будет чуть поболее jpg, а вот если снимать скриншот с обычных окон, то png лучше жмется...
Если щелкать обычные скриншоты, а потом сравнивать картинки на совпадение, программка будет жрать немерено ресурсов, а их еще и отправить надо... Самый оптимальный вариант - брать скриншоты напрямую из памяти видеокарточки и обрабатывать их не сохраняя на винт... |