QT, 查看局域网在线主机网卡的出厂商

embedded/2024/11/15 0:40:52/

如题 , 通过QProcess获取到的局域网mac地址,使用QNetworkReply (记得要QT += network)可以获取其对应的生产产商(将mac地址传入某专门查询mac地址厂商的网站,并分析其返回值,获得结果,这个URL可以修改成别的,可以自己去调试),代码如下(从项目中摘取,放心使用):

    //search mac with http for manufacturer; 需要联网;QString manufacturer = UNKOWN;if(mac!=UNKOWN && mac!="ipconfig -all"){QNetworkRequest request(QUrl("http://7n4.cn/?mac="+mac));request.setRawHeader("Host","7n4.cn");request.setRawHeader("User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1");request.setRawHeader("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");request.setRawHeader("Accept-Language", "zh-cn,zh;q=0.5");request.setRawHeader("Accept-Encoding", "deflate");request.setRawHeader("Accept-Charset", "utf-8;q=0.7,*;q=0.7");request.setRawHeader("Connection", "keep-alive");QNetworkReply* reply = m_manger->get(request);QEventLoop eventLoop;connect(reply,&QNetworkReply::finished,&eventLoop,&QEventLoop::quit);eventLoop.exec(QEventLoop::ExcludeUserInputEvents);strOut = QString::fromUtf8(reply->readAll());reply->close();reply->deleteLater();reply = nullptr;if(!strOut.isEmpty()){strList = strOut.split("<div>");QString key = QString::fromWCharArray(L"厂商名称: ");for(int i=0;i<strList.count();i++){QString str = strList.at(i);int pos = str.indexOf(key);if(pos<0){continue;}str = str.split(key).last();manufacturer = str.split("</div>").first();break;}}}

附: 若要了解如何获取局域网的mac地址,请参考我的csdn的另一篇博文。


http://www.ppmy.cn/embedded/31443.html

相关文章

信息泄露.

一&#xff0c;遍历目录 目录遍历&#xff1a;没有过滤目录相关的跳转符号&#xff08;例如&#xff1a;../&#xff09;&#xff0c;我们可以利用这个目录找到服务器中的每一个文件&#xff0c;也就是遍历。 tipe&#xff1a;依次点击文件就可以找到flag 二&#xff0c;phpi…

如何在Mac上恢复格式化硬盘的数据?

“嗨&#xff0c;我格式化了我的一个Mac硬盘&#xff0c;而没有使用Time Machine备份数据。这个硬盘被未知病毒感染了&#xff0c;所以我把它格式化为出厂设置。但是&#xff0c;我忘了备份我的文件。现在&#xff0c;我想恢复格式化的硬盘驱动器并恢复我的文档&#xff0c;您能…

GDPU JavaWeb 猜字母游戏

他在对你重定向打卡的大饼与立即跳转到你面前的谎言之间反复横跳。 sendRedirect与forward sendRedirect与forward区别 sendRedirect用于将请求重定向到另一个资源&#xff0c;可以是同一个应用程序内的其他 Servlet&#xff0c;也可以是其他 Web 应用程序的资源&#xff0c;…

Nginx部署静态网页,网页嵌套PSE搜索

静态网页实现 1.目的2.PSE设置3.Docker部署nginx4.静态网页仿写参考文件 1.目的 组内有些探索性小需求&#xff0c;发现与OncoSearch功能类似&#xff0c;便尝试自己复现一下该网页&#xff0c;也为后面其他工作打个基础。感谢作者的无私分享&#xff0c;才让我有机会复现出结果…

【经典算法】LeetCode 189. 轮转数组(Java/C/Python3/Go实现含注释说明,中等)

目录 题目描述思路及实现方式一&#xff1a;三次翻转思路代码实现Java版本C语言版本Python3版本Golang版本 复杂度分析 方式二&#xff1a;使用辅助数组思路代码实现Java版本C语言版本Python3版本Golang版本 复杂度分析 总结相似题目 标签&#xff08;题目类型&#xff09;&…

使用protobuf-maven-plugin生成grpc项目

在《在不同操作系统上自动生成Protocol Buffers的Java语言包的方法》一文中&#xff0c;我们使用了protobuf-maven-plugin来生成proto中的message类型结构体。本文我们将使用该插件&#xff0c;完成grpc依赖的生成。 环境 参见《在不同操作系统上自动生成Protocol Buffers的J…

【C++并发编程】(二)线程的创建、分离和连接

文章目录 &#xff08;二&#xff09;线程的创建、分离和链接创建线程&#xff1a;示例线程的分离&#xff08;detach&#xff09;和连接&#xff08;join&#xff09;。 &#xff08;二&#xff09;线程的创建、分离和链接 创建线程&#xff1a;示例 线程&#xff08;Thread…

SpringSecurity6 学习

学习介绍 网上关于SpringSecurity的教程大部分都停留在6以前的版本 但是&#xff0c;SpringSecurity6.x版本后的内容进行大量的整改&#xff0c;网上的教程已经不能够满足 最新的版本使用。这里我查看了很多教程 发现一个宝藏课程&#xff0c;并且博主也出了一个关于SpringSec…