远程控制项目
文章平均质量分 70
基于C/C++和MFC实现
.ね.
这个作者很懒,什么都没留下…
展开
-
数据包的协议封装设计和后台运行功能
这一个传输命令的过程中,是从应用层的报文下来的,而我建立连接是TCP连接,TCP面向字节流,容易出现粘包的问题。我采用的这个就很好的解决的粘包的问题。即使从键盘输入的一个字符,占用一个字节,可能在传输上造成41字节的包,其中包括1字节的有用信息和40字节的首部数据。这种情况转变成了4000%的消耗,这样的情况对于重负载的网络来是无法接受的。所谓“小段”,指的是小于MSS尺寸的数据块,所谓“未被确认”,是指一个数据块发送出去后,没有收到对方发送的ACK确认该数据已收到。最后的和校验是保证数据的完整性。原创 2023-11-19 21:16:06 · 92 阅读 · 1 评论 -
服务端(被控端)网络编程初步网络框架
对服务端socket的构造函数私有化,从语法上隔断外部的实例化对象,最后可以通过友元类/友元函数实例化对象或者静态函数实例化对象。但是又发现一个问题,我们创建的唯一实例是在堆区的,总是要保证好良好的逻辑在合适的地方释放内存delete。:当我们分析具体情况时,发现服务端对象有且仅有一个,且在多线程环境下要保证当前线程的服务端对象不会被其他线程释放掉该服务端对象。也是引用计数行智能指针,但是它不增加对象的引用次数,即弱weak引用:不会控制对象的生命周期,但它知道对象是否还活着。我这边应用到服务端对象。原创 2023-11-18 20:34:40 · 48 阅读 · 1 评论 -
立项前思考
主要功能在Sever端,先做难的,进度的可控性,对接的方便性,可行性评估,提早暴露风险。技术涉及了什么,什么有,什么没有。以及学习时间要结合deadline。服务器->后台->类似命令行:网络编程、文件处理、鼠标处理、图像处理。客户端->MFC->界面:网络编程、MFC编程、图像处理。立项前要对该项目的市场调研,即利润预测。甲方需求是非专业又模糊且会变化的。控制端->客户端->发命令,观察。被控端->服务器->写控制代码。原创 2023-11-18 10:29:00 · 43 阅读 · 1 评论