Qt Ping

QProcess对象可以直接执行cmd的命令,但是ping操作是会阻塞的,所以需要在子线程里ping

QProcess *tempCmd = new QProcess();

tempCmd->start(orderInfo);

tempCmd->waitForFinished(1000);//阻塞等待执行命令完成,否则返回的很可能是空字符串

QString resultInfo = QString::fromLocal8Bit(tempCmd->readAllStandardOutput());//resultStr就是返回结果,需要fromLocal8Bit来接收中文

时间: 2024-10-10 03:56:57

Qt Ping的相关文章

QT核心编程之Qt线程 (c)

QT核心编程之Qt线程是本节要介绍的内容,QT核心编程我们要分几个部分来介绍,想参考更多内容,请看末尾的编辑推荐进行详细阅读,先来看本篇内容. Qt对线程提供了支持,它引入了一些基本与平台无关的线程类.线程安全传递事件的方式和全局Qt库互斥量允许你从不同的线程调用Qt的方法.Qt中与线程应用相关的类如表6所示. 表6 Qt中与线程相关的类 使用线程需要Qt提供相应的线程库的支持,因此,在编译安装Qt时,需要加上线程支持选项. 当在Windows操作系统上编译Qt时,线程支持是在一些编译器上的一个

Qt多线程(有详细例子)

Qt线程类 Qt 包含下面一些线程相关的类:QThread 提供了开始一个新线程的方法QThreadStorage 提供逐线程数据存储QMutex  提供相互排斥的锁,或互斥量QMutexLocker 是一个便利类,它可以自动对QMutex加锁与解锁QReadWriterLock 提供了一个可以同时读操作的锁QReadLocker与QWriteLocker 是便利类,它自动对QReadWriteLock加锁与解锁QSemaphore 提供了一个整型信号量,是互斥量的泛化QWaitConditio

Qt 元对象系统(Meta-Object System)

(转自:http://blog.csdn.net/aladdina/article/details/5496891) Qt的元对象系统基于如下三件事情: 类:QObject,为所有需要利用原对象系统的对象提供了一个基类. 宏:Q_OBJECT,通常可以声明在类的私有段中,让该类可以使用元对象对象的特性,比如动态属性,信号和槽. 编译器:元对象编译器(moc)为每个QObject子对象自动生成必要的代码来实现元对象特性. moc工具会读入C++的源文件,如果它发现了一个或者多个声明了Q_OBJEC

ubuntu14.04下Qt开发环境搭建遇到的问题

在ubuntu14下安装了Qt的安装包:qt-opensource-linux-x86-5.5.1.run 以为 装完安装包后就能直接用了,结果总提示qmake未配置之类的错误,导致编译不了. 后来网上查查,发现还需要安装其它的一些开发环境: sudo apt-get install build-essential sudo apt-get install libgl1-mesa-dev 执行命令 没有下载, 由于更改了/etc/apt/sources.list,有些源不好使,后来又找源才成功安

Qt Examples Qt实例汇总

ActiveQt Examples Using ActiveX from Qt applications. Animation Framework Examples Doing animations with Qt. Animated Tiles Application Chooser Easing Curves Move Blocks* States Stick man* D-Bus Examples Using D-Bus from Qt applications. Chat Complex

QT 使用 QTcpSocket来检测 ip 设备的网络状态

使用QT中 QTcpSocket来检测设备的网络状态: 函数返回true,设备网络状态正常,返回false,设备网络异常. bool TcpIpSocket::sendATcpSocketToIp(QString ip){     m_ipAdress = ip;     abort();     connectToHost(m_ipAdress, port);     //等待timeout时间,如果仍然不通,则异常     return waitForConnected(timeout);

Qt 常用功能

1. 设置鼠标指针为等待 QApplication::setOverrideCursor(Qt::WaitCursor);  //等待 QApplication::restoreOverrideCursor();  //恢复 2. 系统时间,时间格式化字符串 QString str = QDateTime::currentDateTime().toString("yyyy-MM-dd hh-mm-ss zzz"); //zzz毫秒 ddd星期 3. 配置文件读取(.ini) QSett

QT自定义对象导入JavaScript脚本使用

1.对象 项目属性要添加 QT += script自定义的对象头文件如下,实现正常就好,记得脚本里要调用的方法一定要定义在public slots:下,要不然调用时提示该对象没有*方法   1 #ifndef CMU_H 2 #define CMU_H 3 #include "Communication/Communication.h" 4 #include "stt_basic_moudle.h" 5 #include <iostream> 6 #in

QT 中间断访问外网(保持3G网卡在线)

在QT中,为了实现3G网卡不连接网络时会掉线,所以定时访问外网(ping). sysytem的方式调用,同时会调用出黑色控制台窗口,并不是理想的效果 . 最终方式: 头文件包含#include <windows.h> ShellExecute(NULL, L"open", L"ping.exe", L"www.baidu.com", NULL, SW_HIDE); 最终一个参数SW_HIDE是隐藏执行,就是想要的效果. 如果改成SW_