远程监控 java_JAVA实现远程监控

【静默等候,这原是好的】——耶利米哀歌3:26  感激G

---------------------------------------------------------

附件如下:

话不多说,先给出一张截图

0818b9ca8b590ca3270a3433284dd417.png

这几天在给自己的通信项目不断的添加功能,今天 “算是” 实现了一个远程监控

感谢胡老师的帮助~

好了,先说一下

实现原理:

1.需要有被监视端和监视端两个类

2.被监视端启动一个线程 ,来截取屏幕的图片并转化为字节数组传给监视端

3.监视端启动一个线程,来接受字节数组,并转化为图片显示在窗口上

其中需要用到【ImageIO】和【Robot】这两个类

代码实例:

【被监控端】截取屏幕的图片

// 创建Robot对象

Robot robot = new Robot();

// 截取屏幕

BufferedImage bfImg = robot.createScreenCapture(new Rectangle(

100, 100, 400, 400));

【被监控端】保存图片

// 创建文件输出流对象

File file = new File("temp.jpg");

OutputStream fous = new FileOutputStream(file);

ImageIO.write(bfImg, "jpg", fous);

fous.close();

System.out.println("已完成截图");

fous.close();

【被监控端】发送信息

InputStream fins = new FileInputStream(file);

int len = fins.available();

byte[] data = new byte[len];

fins.read(data);

fins.close();

System.out.println("-----------len = "+len);

//将文件长度写入

dous.writeInt(len);

// 将字节数组写入

dous.write(data);

接下来就是监控端的工作了

【监控端】读取消息

//读取文件长度

int len = dins.readInt();

byte[] data = new byte[len];

//读取文件内容

dins.read(data);

【监控端】将图片显示在窗口上

//将读取出的信息转化为图片

ImageIcon img = new ImageIcon(Toolkit.getDefaultToolkit().createImage(data));

//将图片显示在监视者窗口上

Graphics g = cs.getGraphics();

g.drawImage(img.getImage(), 0, 0, 300, 300, null);

实现思路见另一篇博客——

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值