本人想写一个桌面共享程序,但遇到些问题。我的思路是:首先,先用Robot类的getPixelColor方法取出桌面每个点的颜色然后,用Socket类建立c/s连接,将这些颜色传送到另一方。最后,接收颜色的那一方,将这些点画在Canvas上。
遇到的问题有:
1:使用getPixelColor一个个地取出桌面像素的颜色值,速度太慢,1024*768的分辨率大约需要6秒。2:将这些颜色值传送出去更慢,大概需要30秒3:画出这些点速度也很慢4:使用Socket好像不能在互联网间进行连接。Socket server = new Socket(InetAddress.getByName("192.168.0.1"), 6000)
这些问题希望各位能指点指点!!!
遇到的问题有:
1:使用getPixelColor一个个地取出桌面像素的颜色值,速度太慢,1024*768的分辨率大约需要6秒。2:将这些颜色值传送出去更慢,大概需要30秒3:画出这些点速度也很慢4:使用Socket好像不能在互联网间进行连接。Socket server = new Socket(InetAddress.getByName("192.168.0.1"), 6000)
这些问题希望各位能指点指点!!!
竟然用象素点来操作?
个人认为
先在对方电脑上把屏幕截图,然后把它处理成流传给本机
本机接到流后又转化成图片显示出来 这样应该快一点吧
另外 socket支持互联网见连接的,不然要来做什么啊
你可能是在局域网里面的,所以看到的是对内的ip,外面的机当然就识别不了你的ip了
楼主,你的这个地址"192.168.0.1"是私有地址,只能在局域网里用,当然不能通过互连网了
你要想通过互连网就要申请一个公有ip地址,一般要交一定费用,不过不是很多,这样 ,就行了
Robot
public BufferedImage createScreenCapture(Rectangle screenRect)