远程控制的棘手问题(100分)

  • 主题发起人 主题发起人 a_ping
  • 开始时间 开始时间
A

a_ping

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做一个远程控制软件,现在遇到一个棘手的问题:当我的屏幕分辨率是1024*768时,被控端是800*600,我在我的屏幕上点击的地方,与被控端有差距,这个该怎么解决阿
 
按比例缩放
 
to 爱元元的哥哥:
如何做了,请执教一下了,我一开始也这么想,可不会做,汗!
 
用FORM啊。800*600的FORM
 
把你目前的分辨率该了不就行了吗?
 
to zhang_yz6666:
这样做,客户会觉得很不方便的,我还是希望按比例缩放这么做,希望大家指教阿
 
你去找ULTRAVNC的源代码看看,看人家是怎么做的.
 
改计算机的分辨率
 
直接控制对方的鼠标
 
晕死。这不容易。你得到对方的图片,之后在自己的机子显示出来(当然是800*600的)。之后你在图片的那点击(范围800*600),就发送一个数据包过去告诉服务端你点击了哪个坐标,服务端接到数据包后用mouse_even重复一次动作就OK
 
是啊。用坐标来算就很简单了。
 
怎么做了,还能给个算法阿
 
我只以X方向为例,Y方向如法炮制:
先取回对方X方向分辨率假设为 800,你自己的X方向分辨率为 1024,
假设你的鼠标在自己屏幕的X坐标为 450,则映射到对方的屏幕中的
坐标就应该是 450 * (800 / 1024) = 351.6
简单的比例换算而已:)
 
有ULTRAVNC的原码吗?是什么写的?
我有WinVNC的原吗,用Vc++写的
 
换算两台计算机之间的坐标就行了。
 
我自己搞定了,还是很谢谢大家的热心
 
多人接受答案了。
 
后退
顶部