PointerEvent & DesktopSize в протоколе RFB - PullRequest
0 голосов
/ 07 ноября 2010

У меня проблема, я на самом деле перекодирую протокол RFB в своем программном обеспечении для связи с VNC-сервером, и я хочу знать, как получить размер рабочего стола сервера.Я уже протестировал framebuffer_width внутри сообщения serverInit, но оно не соответствует размеру барабана рабочего стола. Я не знаю, как его получить?

Мой второй вопрос - отправить сообщение PointerEvent на сервер.Чтобы переместить мышь, фактически в моем программном обеспечении я устанавливаю x и y мыши в положение {0, 0}, когда я отправляю это на VNC-сервер, оно работает успешно, но когда я добавляю 5 в положение x, оно нене сдвинуться на 5 пикселей больше, чем я хочу, я не понимаю, почему ????не могли бы вы мне помочь, пожалуйста ?

Спасибо за ваши ответы!

1 Ответ

2 голосов
/ 07 ноября 2010

Похоже, что обе ваши проблемы могут быть проблемой масштабирования в вашем клиенте.

Некоторые вопросы, которые могут помочь вам ответить на ваш собственный вопрос (поскольку вам действительно нужно опубликовать больше информации, если вы хотите получить точный ответ):

  • Как вы определяете, что реальный размер рабочего стола не равен ширине в сообщении serverInit?Возможно, вы запускаете сервер VNC и предполагаете, что он использует тот же размер, что и текущий рабочий стол на сервере, и фактически он запускается с другим размером по умолчанию.В случае серверов VNC в системах * nix сервер VNC обычно работает как отдельный рабочий стол от основного рабочего стола, и его размер не обязательно совпадает.
  • Вы уверены, что обрабатываете ширину serverInit и pointerEventx и y позиционируются как 16-битные значения?
  • Получаете ли вы (реклама и) псевдокодирование DesktopSize после ServerInit?Возможно, после подключения сервер может изменять размер буфера фрейма.
  • Какой язык / фреймворк / и т.д. вы используете для реализации клиента.Вы уверены, что функции рендеринга не масштабируются каким-либо образом?

Кстати, я обнаружил, что официальной документации RFB несколько не хватает, и я думаю, что эти ссылки лучше дляСсылка RFB:

...