项目实战:Qt监测操作系统物理网卡通断v1.1.0(支持windows、linux、国产麒麟系统)

若该文为原创文章,转载请注明出处

本文章博客地址:https://hpzwl.blog.csdn.net/article/details/136276999
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...(点击传送门)

Qt开发专栏:项目实战(点击传送门)

需求

使用Qt软件开发一个检测网卡的功能。

兼容windows、linux,国产麒麟系统(同为linux)

Demo

windows上运行:

国产麒麟操作上运行:

windows运行包下载地址

CSDNf粉丝0积分下载:https://download.csdn.net/download/qq21497936/88874612

QQ群:博客首页扫码进入QQ技术群,点击"文件 "搜索"testNetworkCard",群内与博文同步更新)

功能描述 v1.1.0

  • windows上实时检测出网卡通断(插拔,失联等情况)
  • linux上实时检测出网卡通断(插拔,失联等情况)
  • 国产银河麒麟操作系统上实时检测出网卡通断(插拔,失联等情况)

模块化部署

关键源码

cpp 复制代码
#if 1
    QNetworkInterface networkInterface = QNetworkInterface::interfaceFromName(_networkDevName);
    LOG << networkInterface << networkInterface.name();
    if(    networkInterface.flags().testFlag(QNetworkInterface::IsUp)
       && networkInterface.flags().testFlag(QNetworkInterface::IsRunning)
       && !networkInterface.flags().testFlag(QNetworkInterface::IsLoopBack))
    {
        // 连接状态改变,需要抛出改变状态信息
        if(!_connected)
        {
            LOG << "emit signal_connectedChanged"
                << _networkName
                << _connected
                << "change to" << true;
            _connected = true;
            emit signal_networkCardConnectedChanged(_connected);
        }
    }else{
        // 连接状态改变,需要抛出改变状态信息
        if(_connected)
        {
            LOG << "emit signal_connectedChanged"
                << _networkName
                << _connected
                << "change to" << false;
            _connected = false;
            emit signal_networkCardConnectedChanged(_connected);
        }
    }

#endif

本文章博客地址:https://hpzwl.blog.csdn.net/article/details/136276999

相关推荐
Byron Loong3 小时前
【c++】为什么有了dll和.h,还需要包含lib
java·开发语言·c++
坚果派·白晓明3 小时前
【鸿蒙PC三方库移植适配框架解读系列】第一篇:Lycium C/C++ 三方库适配 — 概述与环境配置
c语言·开发语言·c++·harmonyos·开源鸿蒙·三方库·c/c++三方库
咩咦4 小时前
C++学习笔记02:cin 和 cout 输入输出
c++·学习笔记·cin·输入输出·cout
咩咦4 小时前
C++学习笔记05:引用和常引用
c++·学习笔记·引用·const·常引用
香蕉鼠片4 小时前
算法过程中不会的
开发语言·c++
阿旭超级学得完4 小时前
C++11包装器(function和bind)
java·开发语言·c++·算法·哈希算法·散列表
li星野4 小时前
位运算 & 数学 & 高频进阶九题通关(Python + C++)
c++·python·学习·算法
磊 子5 小时前
多态类原理+四种类型转换+异常处理
开发语言·c++·算法
王老师青少年编程5 小时前
csp信奥赛C++高频考点专项训练之字符串 --【回文字符串】:回文拼接
c++·字符串·csp·高频考点·信奥赛·字符串回文·回文拼接
Teleger7 小时前
在window上使用c++控制鼠标点击,实现的exe
c++·单片机·计算机外设