1、.h头文件

#ifndef TESTNETWORKTHREAD_H
#define TESTNETWORKTHREAD_H

#include <QThread>

class TestNetworkThread : public QThread
{
    Q_OBJECT
public:
    explicit TestNetworkThread(QObject *parent = nullptr);
    ~TestNetworkThread();

protected:
    void run();
signals:
    void sendMessage(QString);
};

#endif // TESTNETWORKTHREAD_H

2、.cpp文件

#include "testnetworkthread.h"
#include <QProcess>
#include <QTextCodec>

TestNetworkThread::TestNetworkThread(QObject *parent) : QThread{parent}
{
    
}

TestNetworkThread::~TestNetworkThread()
{
    
}

void TestNetworkThread::run()
{
    QProcess cmd;
    QTextCodec *codec = QTextCodec::codecForName("GBK");
    QString result;
    cmd.start("ping www.google.com -n 1");    //ping ip地址 -n 1表示只ping一次就结束
    cmd.waitForFinished(-1);    //等待ping完成
    result = codec->toUnicode(cmd.readAll());
    emit sendMessage(result);
}
最后修改:2023 年 08 月 04 日
如果觉得我的文章对你有用,请随意赞赏