远程屏幕捕获和控制

时间:2009-05-24 03:27:12

标签: java

我正在做一个关于“远程屏幕捕获和控制”的项目....在java中 它是桌面应用程序...... thre是客户端 - 服务器架构....这里服务器可以捕获客户端并在客户端上进行wath但是,客户端并不知道有人正在观察他/她....

并且在捕获客户端之后,服务器还可以从捕获的数据控制客户端.....并且它在客户端完成...自动...由服务器控制..... 所以我想要你的帮助......请给我一个建议......

2 个答案:

答案 0 :(得分:2)

查看“java.awt.Robot”类:

http://java.sun.com/javase/6/docs/api/java/awt/Robot.html

这些方法可以帮助您:

BufferedImage createScreenCapture(Rectangle screenRect);
void keyPress(int keycode) 
void keyRelease(int keycode) 
void mouseMove(int x, int y) 
void mousePress(int buttons) 
void mouseRelease(int buttons) 

答案 1 :(得分:1)

你有this article使用机器人进行截屏的基础知识(按照brd6644的回答建议)

  

我们可以捕获整个桌面,并将其保存到PNG文件,如下所示。

public void captureScreen(String fileName) throws Exception {
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    BufferedImage image = new Robot().createScreenCapture(new Rectangle(screenSize));
    ImageIO.write(image, "png", new File(fileName));
}
  

或者,我们可以捕获我们的JFrame,包括它的窗口装饰,如下所示。

public void captureFrame(JFrame frame, String fileName) throws Exception {
    BufferedImage image = new Robot().createScreenCapture(frame.getBounds());
    ImageIO.write(image, "png", new File(fileName));
}

旧的(2003)jxta-remote-desktop project也可以给你一些指示