JARVIS
功能
突破内网的限制,实现对局域网内PC的远程监控,目前已实现实时截图,发送关机指令功能
结构
Web应用(JARVIS)和Java应用(Server,PCClient)配合实现功能

JARVIS和Server运行在服务器上,两者以Socket流本地连接(Server为ServerSocket),JARVIS负责从移动端接收命令后通过Socket流发送给Server。
PCClient和运行在PC端,以Socket流和Server远程连接(Server为ServerSocket),PCclient负责从Server处接收指令,并执行。
JARVIS负责接收指令,PCClient负责执行指令,Server负责调度转发。
Server服务端(Server)
(1)先初始化Server对象
(2)先等待Web端连接
(3)再等待PC端Client对象连接
(4) 两线程共享Server对象,并以成员变量pcConnectState来共享PC端的连接情况。监听PC端Client断开线程(ClientMonitor)
每十秒钟isConnected()方法判断一次PC端是否还在线,若已离线则修改成员变量pcConnectState
并终止线程等待Web命令线程(WebMonitor)
read()等待Web端传来指令,调用Socket类成员方法setSoTi

该博客介绍了使用Java构建的局域网PC监控系统,主要包括JARVIS、Server和PCClient三个部分。JARVIS接收移动端命令,Server调度转发,PCClient执行指令。系统通过Socket通信,Server端监听Web和PC端连接,处理断开和命令接收。文章还提到了Windows发送心跳包导致的异常问题及解决方案,并提供了源码链接。
最低0.47元/天 解锁文章
299

被折叠的 条评论
为什么被折叠?



