一些关于屏幕共享和远程控制的思路

一、背景

现实中有很多的工具可以实现远程登录和屏幕控制。

例如 向日葵、SSH等等。


二、本文目的

简单探讨实现共享屏幕和远程网络控制的思路。


三、主要思路

(一)画面分享

思路:用截图和远程主机画图来实现。

具体:

1、共享方不断循环定时截图,通过网络发送给受益方。

2、受益方在图形窗口中画出截图照片,并且定时更新截图。

3、发送的协议格式:

1字节类别(关闭、数据两种类别)

8字节毫秒数时间戳

2字节数据长度

指定长度的截取图片数据或者关闭信息

1字节间隔符


(二)远程图形控制

1、图形化界面控制,用网络传递鼠标和键盘动作。

2、控制协议格式:

1字节类别(区分鼠标和键盘)

1字节事件类别(区分左击,中击,右击)

2字节事件参数(键码)

2字节事件x坐标

2字节事件y坐标

3、事件种类

单一鼠标事件:左击,右击,双击。

单一键盘事件:例如按住某个键,同时按住多个键,松开某个键。

4、思路

受控方循环监听主控方发来的网络命令,调用Robot类的事件方法执行事件。

同时需要投屏支持,给主控方反馈画面才能远程控制。

当进入控制窗口后像操作本地电脑一样操作远程电脑。


(三)远程命令登录思路

1、双方建立TCP连接。

2、开始身份验证。

3、验证通过进入下一步,否则失败退出。

4、主控方给受控方发送命令字符。

5、受控方读取命令,调用子程序来执行命令。

6、受控方及时读取子进程的执行反馈信息。

7、受控方把反馈信息发送给主控方。

8、主控方读取反馈信息后打印在命令行窗口里。

相关推荐
维克兜率天2 小时前
【维克】模块3总结:从一行空数据,到一个能跑的模型
python·深度学习·算法
飞Link2 小时前
定积分理论与 Python 仿真完全指南
python·算法
闲研随记3 小时前
RL算法学习:ArgMaxRL
算法·llm·强化学习·rl
飞Link3 小时前
零基础:离散数据积分与 Python 实现保姆级教程
python·算法
淡海水3 小时前
11-03-Unity-List-T-和Dictionary-TKey-TValue-的性能调优实战
算法·unity·c#·list·dictionary
土司大王3 小时前
LeetCode hot100——394.字符串解码:Java 双栈模拟
java·算法·leetcode
a187927218313 小时前
【算法】双指针与滑动窗口(三):相向双指针——比较、排除、收缩
算法·leetcode·双指针·滑动窗口·原理·相向双指针·算法讲解
AI 小老六3 小时前
Agent 记忆系统难在取舍
人工智能·算法·架构·agent·memory·harness
大熊背3 小时前
《Color constancy by characterization of illumination chromaticity》之色度色域最大化算法(一)
数码相机·算法·白平衡·色度色域