Qt/C++开发监控GB28181系统/云台控制/获取预置位信息/添加删除调用预置位

一、前言

之前用onvif已经完美实现了设备的云台控制和预置位的功能,这个基础功能在监控系统中是使用频率很高的,所有gb28181肯定也提供了这样的功能,很多人以为是通过包含xml数据,对应节点指定对应的动作来实现,其实不是的,是类似于早期模拟设备的云台的串口协议中的控制指令,16进制格式的数据,一个个字节表示对应的含义,这个在国标文档中写的非常的详细,按照那个规则来肯定错不了,上下左右移动有个字节位是固定的数据,所以程序这边只需要根据要操作的动作填充对应位的数据即可。

和云台控制一起的还有镜头放大缩小、光圈放大缩小、镜头聚焦和放焦,这些也都是一样的规则,奇怪的是,预置位的添加删除修改调用也都是这个规则,之前还以为是单独的xml格式的数据或者指令。不过遗憾的是预置位的信息并不支持名称的修改,而onvif那边是可以的,有时候希望给预置位改成一个中文的名字方便调用查阅等,不知道后续的国标协议会不会增加进去,个人觉得还是要支持比较好。

//云台控制:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK801c1bb8b2234e2e94be74f0087e28f5
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1022
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: 6822f48163704effb5b58d7031eba9f4
CSeq: 23 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10022</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F01029600004D</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>//控制应答:设备端-》服务端
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK801c1bb8b2234e2e94be74f0087e28f5
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1022
To: <sip:34020000001320000002@192.168.0.64:5060>;tag=1060605518
Call-ID: 6822f48163704effb5b58d7031eba9f4
CSeq: 23 MESSAGE
User-Agent: IP Camera
Content-Length: 0//停止云台:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK3cb5f960d94549888269c12f4ed29c9e
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1023
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: f3124084767d48909decda7579e3f96b
CSeq: 24 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10023</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F0100000000B5</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>//停止应答:设备端-》服务端
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK3cb5f960d94549888269c12f4ed29c9e
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1023
To: <sip:34020000001320000002@192.168.0.64:5060>;tag=1071996623
Call-ID: f3124084767d48909decda7579e3f96b
CSeq: 24 MESSAGE
User-Agent: IP Camera
Content-Length: 0//查询预置位:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK5f11d64dadd7466cb06011e8971b788d
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1024
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: aac3afc576894717a72ed58030479bcb
CSeq: 25 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 155
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Query><CmdType>PresetQuery</CmdType><SN>10024</SN><DeviceID>34020000001310000001</DeviceID>
</Query>//返回预置位:设备端-》服务端
MESSAGE sip:34020000002000000001@3402000000 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.64:5060;rport;branch=z9hG4bK1149716366
From: <sip:34020000001320000002@3402000000>;tag=2001348774
To: <sip:34020000002000000001@3402000000>
Call-ID: 360379917
CSeq: 20 MESSAGE
Content-Type: Application/MANSCDP+xml
Max-Forwards: 70
User-Agent: IP Camera
Content-Length:   258<?xml version="1.0" encoding="GB2312"?>
<Response>
<CmdType>PresetQuery</CmdType>
<SN>10024</SN>
<DeviceID>34020000001310000001</DeviceID>
<PresetList Num="1">
<Item>
<PresetID>1</PresetID>
<PresetName>预置点 1</PresetName>
</Item>
</PresetList>
</Response>//添加预置位:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK76caaff468eb43ca9818e6fb38cfd057
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1025
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: a01a7be3ba6b4214ac0755d92d0096c5
CSeq: 26 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10025</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F018100020038</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>//删除预置位:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK9259fa44edce4797a69c4c58aa408d2c
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1027
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: 1bc5c4f7629b436ca66865c112ba2d47
CSeq: 28 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10027</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F01830002003A</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>//修改预置位:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bKb968612c929f488bb3f105b907a61eba
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1031
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: 37bfa9cea6564707af579159d662db4a
CSeq: 32 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10031</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F018100020038</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>//调用预置位:服务端-》设备端
MESSAGE sip:34020000001320000002@192.168.0.64:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.110:15060;branch=z3hG9bK3a2b16dffa134a25ad7158ef07ad8b07
From: <sip:34020000002000000001@192.168.0.110:15060>;tag=1032
To: <sip:34020000001320000002@192.168.0.64:5060>
Call-ID: 22431fe05dec47cbb789617b38caef58
CSeq: 33 MESSAGE
User-Agent: wx_feiyangqingyun
Max-Forwards: 70
Content-Length: 251
Content-Type: application/MANSCDP+xml
Contact: <sip:34020000002000000001@192.168.0.110:15060><?xml version="1.0" encoding="GB2312"?>
<Control><CmdType>DeviceControl</CmdType><SN>10032</SN><DeviceID>34020000001310000001</DeviceID><PTZCmd>A50F018200020039</PTZCmd><Info><ControlPriority>5</ControlPriority></Info>
</Control>

二、效果图

在这里插入图片描述

三、相关地址

  1. 国内站点:https://gitee.com/feiyangqingyun
  2. 国际站点:https://github.com/feiyangqingyun
  3. 个人作品:https://blog.csdn.net/feiyangqingyun/article/details/97565652
  4. 文件地址:https://pan.baidu.com/s/1d7TH_GEYl5nOecuNlWJJ7g 提取码:01jf 文件名:bin_video_gb28181。

四、功能特点

  1. 支持设备注册、注销、心跳、校时、注册认证、注销认证等。
  2. 设备上线后可以手动获取设备状态、设备信息、配置信息、预置位信息等。
  3. 设备上线后自动获取设备通道信息,包括中文通道名称。识别到通道上线离线变化,会重新获取该设备的所有通道信息。
  4. 支持视频点播,可以分别点播主码流和子码流,内置rtp解包线程,解包后发给视频播放组件解码播放。
  5. 每个设备每个通道支持点播多个视频,通过ssrc区分,支持共用端口和不同端口收流。
  6. 支持对某个设备下面所有通道、某个通道、某个通道对应的某个流分别关闭。
  7. 支持录像文件查询和回放,回放控制支持暂停播放、继续播放、倍速播放、切换播放进度。
  8. 支持录像文件下载,支持倍速比如8倍速下载,可同时多线程批量下载。
  9. 回放和下载同时支持IPC和NVR,比如摄像头自带的SD存储卡录像文件回放,NVR上的硬盘录像文件回放。
  10. 支持云台控制,向上、向下、向左、向右、左上、右上、左下、右下方位移动,镜头放大缩小,光圈放大缩小,镜头聚焦放焦。
  11. 支持预置位信息的查询、调用、添加、修改、删除等操作。
  12. 自动目录订阅功能,通道上线下线都有对应的信号通知。
  13. 内置定时读取通道信息机制,以保证通道信息是最新的,比如有些NVR是不断更新的通道信息。
  14. 支持警情订阅,各种警情事件比如运动目标检测报警、入侵检测报警、徘徊检测报警等自动上报。
  15. 国标服务同时支持udp和tcp方式,可选只监听一种或者两种都监听,tcp方式自动处理粘包问题。
  16. 国标拉流同时支持udp、tcp被动、tcp主动三种方式,每个通道都可以自由选择何种拉流方式。
  17. 内置拉流端口池,每次拉流从中取出一个,关闭流自动回收端口号,重复利用。
  18. 收流端口自动纠错,自动跳过被占用的端口,不会出现端口占用导致收流失败的情况。
  19. 视频播放自适应硬解码,极低资源占用,实时性极好,带悬浮条显示视频流信息,可以直接在悬浮条单击按钮保存录像文件到本地。
  20. 支持几千路国标消息交互并发,实时视频流支持64路同时显示,可以拓展更多路数。
  21. 支持阿里云等云服务器,可以分别设置内网监听地址和外网访问地址,一般云服务器上是监听地址用内网,对外访问用外网地址。
  22. 支持视频分发,也就是推流,视频通道打开后可以自动推流到流媒体服务器,其他需要的地方拉流即可,支持rtsp、rtmp、hls、webrtc等方式拉流。
  23. 同时支持gb28181-2011、gb28181-2016、gb28181-2022以及后续可能的所有协议版本。
  24. SIP解析和交互采用纯Qt底层代码实现,udp/tcp通信交互,祖传原创代码解析,不依赖任何第三方。
  25. 代码量少,gb28181交互部分共几千行代码,注释详细,接口友好,使用极其简单,提供非常详细的使用示例。
  26. 支持海康、大华、宇视、华为、天地伟业等所有国标设备。
  27. 支持所有Qt版本和编译器以及操作系统,包括但不限于win、linux、mac、android、嵌入式linux、树莓派香橙派、国产os等。

五、相关代码

//具体格式规范在gb28181-2016文档的第79页
//预置位和巡航等操作也是属于云台部分/速度参数就对应的预置位编号
QString GB28181Body::getPtzCmd(PtzType ptzType, quint8 ptzSpeed)
{//协议固定数据格式QByteArray data;data.append(0xA5);data.append(0x0F);data.append(0x01);data.append((char)0x00);data.append((char)0x00);data.append((char)0x00);data.append((char)0x00);data.append((char)0x00);//不同动作填充对应数据/下面的与运算是为了防止数据越界if (ptzType == PtzType_Right) {data[3] = 0x01;data[4] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_RightUp) {data[3] = 0x09;data[4] = ptzSpeed & 0xFF;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_Up) {data[3] = 0x08;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_LeftUp) {data[3] = 0x0A;data[4] = ptzSpeed & 0xFF;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_Left) {data[3] = 0x02;data[4] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_LeftDown) {data[3] = 0x06;data[4] = ptzSpeed & 0xFF;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_Down) {data[3] = 0x04;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_RightDown) {data[3] = 0x05;data[4] = ptzSpeed & 0xFF;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_ZoomIn) {data[3] = 0x10;data[6] = (ptzSpeed & 0x0F) << 4;} else if (ptzType == PtzType_ZoomOut) {data[3] = 0x20;data[6] = (ptzSpeed & 0x0F) << 4;} else if (ptzType == PtzType_IrisIn) {data[3] = 0x44;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_IrisOut) {data[3] = 0x48;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_FocusIn) {data[3] = 0x41;data[4] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_FocusOut) {data[3] = 0x42;data[4] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_AddPreset) {data[3] = 0x81;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_SetPreset) {data[3] = 0x82;data[5] = ptzSpeed & 0xFF;} else if (ptzType == PtzType_DelPreset) {data[3] = 0x83;data[5] = ptzSpeed & 0xFF;}//末尾字节是前面字节加起来int end = 0;int count = data.size();for (int i = 0; i < count - 1; ++i) {end += data.at(i);}data[7] = end;return QString(data.toHex()).toUpper();
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/78194.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第T8周:猫狗识别

● 语言环境&#xff1a;Python3.8.8 ● 编译器&#xff1a;Jupyter Lab ● 深度学习环境&#xff1a;TensorFlow2.4.1 猫狗识别 一、前期工作1. 设置GPU 二、数据预处理1. 加载数据2.再次检查数据3.配置数据集 三、构建VG-16网络四、编译五、训练模型六、模型评估七、预测八、…

主流微前端框架比较

主流微前端框架比较 以下表格列出了当前主流微前端框架的核心对比信息,包括基本介绍、核心特性、适用场景、技术栈兼容性、优缺点、社区维护情况和典型应用案例等: 框架基本介绍核心特性与机制适用场景技术栈兼容性优缺点社区维护情况典型应用案例qiankun蚂蚁金服推出的生产…

大学生入学审核系统设计与实现【基于SpringBoot + Vue 前后端分离技术】

一、项目概述 1.1 项目背景 随着高校的不断扩招&#xff0c;传统的入学审核管理模式已不能满足大规模学生数据的处理需求。人工管理不仅效率低下&#xff0c;还容易出现疏漏。本系统通过信息化手段&#xff0c;提升入学审核过程中的数据管理和审批效率。 1.2 系统目标 系统…

云计算-容器云-服务网格Bookinfo

服务网格&#xff1a;创建 Ingress Gateway 将 Bookinfo 应用部署到 default 命名空间下&#xff0c;请为 Bookinfo 应用创建一个网 关&#xff0c;使外部可以访问 Bookinfo 应用。 上传ServiceMesh.tar.gz包 [rootk8s-master-node1 ~]# tar -zxvf ServiceMesh.tar.gz [rootk…

Spring 分批处理 + 冷热数据分离:历史订单高效迁移与数据清理实战

在实际业务中&#xff0c;随着时间推移&#xff0c;订单量持续增长&#xff0c;若未及时进行数据治理&#xff0c;会造成数据库膨胀、查询缓慢、性能下降等问题。为了实现数据分层管理和系统高性能运行&#xff0c;我们在项目中采用了“冷热数据分离 分批迁移 数据清理”的综…

新手SEO优化核心步骤

内容概要 对于SEO新手而言&#xff0c;建立系统化的优化框架是突破入门瓶颈的关键。SEO的核心在于通过技术手段与内容策略的结合&#xff0c;提升网站在搜索引擎中的可见性与用户价值。具体而言&#xff0c;新手需优先掌握关键词研究&#xff0c;明确目标用户的搜索意图&#…

C++ 之 【list的简介、list 的构造函数、iterator、容量操作、元素访问、增删查改与迭代器失效】

目录 1.list的介绍 2.list的使用 2.1 构造函数 2.2 iterator 的使用 2.3 容量操作 2.4 元素访问 2.5 增删查改 2.5.1头插头删与尾插尾删 2.5.2 insert 、erase 函数 2.5.3 clear、swap函数 2.5.4 关于find函数 3.迭代器失效 1.list的介绍 (1)list的底层通常实现为带…

Laravel Octane 项目加速与静态资源优化指南

Laravel Octane 项目加速与静态资源优化指南 一、Octane 核心加速配置 扩展安装与环境配置 composer require laravel/octane # 安装核心扩展‌php artisan octane:install # 生成配置文件&#xff08;选择 Swoole/RoadRunner 等服务器&#xff09;‌服务器参数调优‌ …

高露洁牙膏是哪个国家的品牌?高露洁牙膏哪一款最好?

高露洁是来自于美国一个比较有知名度的品牌&#xff0c;在1806年的时候创立。总部是在美国纽约公园大道&#xff0c;在1873年时&#xff0c;高露洁就已经开始销售罐装牙膏。 在1896年时期推出可折叠管牙膏&#xff0c;在口腔护理产品发展的过程中拥有着不容忽视的地位。在1992…

【Python爬虫详解】第八篇:突破反爬体系的工程实践

当矛与盾的较量进入白热化&#xff0c;突破反爬需要的不只是技巧&#xff0c;更是一套完整的工程化解决方案——本文将揭示对抗现代反爬体系的九大核心战术。 一、JavaScript混淆的深度破解 1. AST&#xff08;抽象语法树&#xff09;解混淆 案例&#xff1a;某电商平台商品价…

【Linux调整FTP端口】

Linux调整FTP端口 一、确保新端口未被占用在修改端口之前&#xff0c;可以使用以下命令检查端口是否被占用&#xff1a; 二、修改vsftpd配置文件1. 打开vsftpd配置文件2. 找到并修改端口配置3. 保存并退出4. 重启vsftpd服务 三、配置防火墙 在Linux系统中修改FTP端口&#xff0…

npm打包内存不足- JavaScript heap out of memory

直接贴出报错信息 <--- Last few GCs --->[30904:0000010F60FE58E0] 22090 ms: Scavenge 2037.4 (2069.4) -> 2036.4 (2074.2) MB, 2.5 / 0.0 ms (average mu 0.228, current mu 0.216) allocation failure [30904:0000010F60FE58E0] 22101 ms: Scavenge 2…

AI大语言模型破译“未知未知”的密钥:开源情报、被动收入与智能体协作的深层机理与实践

在人类认识世界的漫长征程中&#xff0c;信息与知识的获取和运用一直是核心驱动力。我们从“一无所知”的状态&#xff0c;逐渐积累“已知已知”&#xff0c;并在此基础上识别“已知未知”&#xff0c;设定目标去探索解答。然而&#xff0c;真正能够带来范式转变、颠覆现有格局…

kubelet 清理资源以缓解磁盘压力

kubelet 资源清理缓解磁盘压力指南 在 Kubernetes 集群中&#xff0c;当节点磁盘压力过大时&#xff0c;可通过以下几种方式利用 kubelet 清理资源&#xff0c;从而缓解磁盘压力。 一、镜像垃圾回收 自动回收 kubelet 内置了镜像垃圾回收机制&#xff0c;其行为由配置参数控…

SPOJ 11576 TRIP2 - A Famous King’s Trip 【Tarjan+欧拉回路】

自我吐槽 &#xff08;哭 题目传送门 SPOJ 洛谷 题目大意 让你在简单无向图上删去2条边&#xff0c;使该图联通并存在欧拉回路 输出字典序最小的一对边 思路 考虑到存在欧拉回路的充要条件&#xff0c;即 i n x ≡ 0 ( m o d 2 ) ∀ i ( 1 ≤ i ≤ n ) in_x\equiv 0 (\m…

藏文情感分析器入门学习实践

&#x1f3af; 项目目标&#xff1a; 输入一段藏文短句。自动分析这句话的情感倾向&#xff1a;积极&#xff08;正面&#xff09;/消极&#xff08;负面&#xff09;/中立。 &#x1f50d; 技术原理简介 情感分析是什么&#xff1f; 情感分析&#xff08;Sentiment Analysi…

双指针(5)——有效三角形个数

题目&#xff1a; 这道题我们首先可能会想到暴力解法&#xff0c;三个for循环然后进行check&#xff08;&#xff09;。时间复杂度肯定是不允许的。 同时&#xff0c;验证可以组成三角形的条件是任意两边之和大于第三边&#xff0c;这就意味着我们每组要进行三次比较。但也有捷…

书生实战营之沐曦专场

一&#xff1a;实验环境进入和启动实验容器(D.run平台) 1.1首先进入平台进行注册 D.run平台https://console.d.run/ 注册和登录环节就跳过了。 1.2 启动实验容器--详细步骤如下 1.2.1选择容器的名称、区域、镜像&#xff08;注意镜像必须选择Dlinfer&#xff09; 1.2.2可以选…

内置类型成员变量的初始化详解

在 C 中&#xff0c;内置类型&#xff08;如 int、float、double、char、指针等&#xff09;的初始化方式与类类型&#xff08;如 std::string、自定义类&#xff09;不同。由于内置类型没有构造函数&#xff0c;它们的初始化行为由编译器直接处理。以下是详细解析&#xff1a;…

对第三方软件开展安全测评,如何保障其安全使用?

对第三方软件开展安全测评&#xff0c;能够精准找出软件存在的各类安全隐患&#xff0c;进而为软件的安全使用给予保障。此次会从漏洞发现、风险评估、测试环境等多个方面进行具体说明。 漏洞发现情况 在测评过程中&#xff0c;我们借助专业技术与工具&#xff0c;对第三方软…