QT 远程升级 实现设备升级

qt实现远程升级,设备升级客户端。

应用场景:

1.通常我们在公网时,升级采用ftp升级下载文件,但这样往往受限于网络情况。

2.同时有时候我们需要给工程人员不具备相应的专业知识。有必要我们开发升级工具,方便其使用。

于是开发了这样一款升级工具。

具体思路如下:

设备作为服务器,升级工具为客户端。

第一步:先通过广播或组播方式,将获取设备信息请求广播出去。接收方(设备)接收到广播,将设备信息发送给升级客户端。

将设备信息发送给客户端有两种方式1.升级客户端监听另外一个端口的广播。在接收到升级客户端的广播请求后往另外一个端口发送设备信息。2.发送广播请求时,可以涵盖客户端IP及端口等信息。设备介绍到之后建立连接发送数据。相比第一种方式更具有优势。

然后使用者可以根据判断当前设备在是否需要升级。(交互信息自定义)

参考如下: QT 通过UDP广播获取网络中所有设备ip地址  https://blog.csdn.net/dxzysk/article/details/55511269

 

第二步:通过获取到的设备信息,如IP等,建立TCP链接之后,发送文件。

参考如下:Qt编写的软件在线升级系统(客户端)https://blog.csdn.net/ychwn/article/details/4313361

 

客户端和模拟设备代码在:https://download.csdn.net/download/mingting1323/10632094

设计界面如下:

用户通过选择按钮选中需要升级的问题,搜索可以当前设备,点击升级即开启线程进行升级。

 

文件升级中:

 

注意可能出现部分广播包发不出去:(解决方法禁用虚拟机网卡)

网络UDP广播包发不出去或接收不到问题

 

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lixiang987654321/article/details/41697533

    在公司最近项目中,有关设备搜索采用UDP广播方式搜索,出现的情况是,部分机器能正常接收到广播包,部分机器接收不到广播包,部分机器发送不了广播包情况,经过N天的查询,结果发现惊人的秘密:虚拟机网卡导致广播包发送不出去或接收不到问题!!!以上结果仅供各位大神参考!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章