1、只需要探测当前有没有连上Wi-Fi(不用获取网络状态),可以调用<QNetworkConfigurationManager>类。

    QNetworkConfigurationManager mgr;
if(!mgr.isOnline())
{
qDebug()<<"请先连接Wi-Fi";
}
else
{
qDebug()<<"当前已连接上Wi-Fi";
}

2、需要探测当前网络有没有数据来往,可以采用以下方法:

1:先声明一个槽:

void lookedUp(const QHostInfo &);

2:在.cpp文件里实现这个槽函数。

void MainWindow::lookedUp(const QHostInfo &host)
{
if(host.error() != QHostInfo::NoError)
{
qDebug() << "当前无网!";
errTime++;
}
else
{
qDebug() << host.addresses().first().toString();
ui->status->setText("已联网!");
netStatus = true;
}
if(errTime > )
{
ui->status->setText("拨号失败!");
ui->pushButton_2->setEnabled(true);
}
}

3:若要检测有没有数据,则如下调用即可。

QHostInfo::lookupHost("www.baidu.com", this, SLOT(lookedUp(QHostInfo)));

该方法的原理是通过lookUpHost()函数,ping通www.baidu.com,并返回其IP地址,如果返回了,即网络有效,如果ping了多次,还是没有任何返回,那就认为当前网络没有数据。

注:QNetworkConfigurationManager.isOnline()方法还暂不能监测指定某一路的在线情况。

转自:http://blog.csdn.net/z_jinye/article/details/38908285

Qt实现探测当前有没有网络连接(Wi-Fi)——QNetworkConfigurationManager.isOnline()的更多相关文章

  1. Android高可用移动网络连接---(转载自http://wingjay.com/2019/01/16/mobile-network-connection/)

    读者好,前面我们在 <Android 架构之网络连接与加速> 和<Android 架构之长连接技术>两篇文章中,讲解了 Http 短连接.TCP 长连接.连接复用与速度优化.数 ...

  2. [转]ping检测网络连接异常

    转载地址:http://blog.csdn.net/feizxiang3/article/details/26672781 一般来说当出现网络无法连接时,习惯性的用ping命令来ping某个ip地址, ...

  3. [转]Linux服务器上11种网络连接状态 和 TCP三次握手/四次挥手详解

    一.Linux服务器上11种网络连接状态: 图:TCP的状态机 通常情况下:一个正常的TCP连接,都会有三个阶段:1.TCP三次握手;2.数据传送;3.TCP四次挥手. 注:以下说明最好能结合”图:T ...

  4. VMware的三种网络连接方式区别

    关于VMware的三种网络连接方式,NAT,Bridged,Host-Only ,在刚接触的时候通常会遇到主机Ping不通虚拟机而虚拟机能Ping得通主机:主机与虚拟机互不相通等等网络问题.本文就这三 ...

  5. Win10搭建Linux开发环境之网络连接设定

    一直想在家自己搭建一个LINUX服务器,好在上面安装个ORACLE数据库玩玩. 上次用了Ubuntu,结果ORACLE没装成功,现在换个思路,采用CentOS 7作为Linux服务器, 之后再进行构建 ...

  6. 【虚拟机】在VMware中安装Server2008之后配置网络连接的几种方式

    VMware虚拟机的网络连接方式分为三种:桥接模式.NAT模式.仅主机(Host Only) (1)桥接模式 桥接模式即在虚拟机中虚拟一块网卡,这样主机和虚拟机在一个网段中就被看作是两个独立的IP地址 ...

  7. 网络连接详细信息出现两个自动配置ipv4地址

    问题:网络连接详细信息出现两个自动配置ipv4地址,一个是有效地址,一个是无效地址. 解决办法:先将本地连接ip设置成自动获取,然后点击开始——>运行——>输入cmd,回车,进入命令行界面 ...

  8. MMORPG大型游戏设计与开发(服务器 游戏场景 掉落与网络连接)

    时间一点点的消逝,伴着自己空闲日子将要结束的时候我尽量的学习和分享场景和AI的知识给朋友们,不过很遗憾的是这些文章还有不足的地方,就是有的难点没有完全的分析到.掉落在游戏中必不可少的,同时网络连接也是 ...

  9. VMware Workstation中网络连接之桥接、NAT和Host-only

    在Windows XP系统中,安装好VMware Workstation虚拟机软件以后,我们可以查看一下"网络连接"窗口: 在窗口中多出了两块网卡: VMware Network ...

随机推荐

  1. c#中lock的使用(用于预约超出限额的流程)

    一个项目,预约系统,核心二张表:预约表,预约限额表 用户点击预约按钮后, 1. 先select 预约限额表把该预约时间段的限额取出来, 2. 再select 预约表把该预约时间已经预约上的次数算出来 ...

  2. calcite 理论

    https://blog.csdn.net/yunlong34574/article/details/46375733 https://cloud.tencent.com/developer/arti ...

  3. ES monitoring

    https://www.quora.com/What-is-the-best-monitoring-tool-for-Elasticsearch-I-also-want-log-monitoring- ...

  4. 每日英语:China's Wistful Wen Gets His Wish

    As his term as premier was drawing to a close, Wen Jiabao reflected wistfully on some of the goals h ...

  5. python(39):argparse的用法,从外部传入指定参数

    直接上例子: # /usr/bin/env python # coding=utf8 import os import argparse import logging import sys FORMA ...

  6. Asp.Net MVC绑定DropDownList等控件

    测试环境:vs2013..Net4.5.mvc5 一.Asp.Net MVC绑定控件原理说明 以Html.TextBox为例 /// <param name="name"&g ...

  7. c++ primer读书笔记之c++11(二)

    1 新的STL模板类型,std::initializer_list<T> c++11添加了initializer_list模板类型,用于提供参数是同类型情况的可变长度的参数传递机制,头文件 ...

  8. android 模拟器 sdcard权限修改

    http://blog.csdn.net/zj510/article/details/8645777 mksdcard 1024M c:\sdcard.img (路径随意,大小随意) 执行:adb p ...

  9. Django 批量保存图片文件 自定义上传方法

    1.前端通过formData的方式批量增加图片或文件 for (var i = 0; i < form_img_list.length; i++) { formData.append('imag ...

  10. curl Array to string conversion 错误

    0x00 故障 由于GuzzleHttp在iis上使用错误,于是开始替换其为Unirest,没想到发送了一个curl Array to string conversion 错误 0x01 原因 跟踪调 ...