QT5 Ping命令

  • QT5调用Ping命令,执行结果通过TextBrowser控件显示
1. 阻塞式
QString remoteIP = "192.168.0.111";
QProcess cmd(this);
cmd.start("ping " + remoteIP);
cmd.waitForFinished(-1);
QByteArray out = cmd.readAllStandardOutput();
ui->textBrowser_Output->append(QString::fromLocal8Bit(out));

2. 查询式
QString remoteIP = "192.168.0.111";
QProcess cmd(this);
cmd.start("ping " + remoteIP);

while (cmd.waitForFinished(20) == false) {
    QByteArray out = cmd.readAllStandardOutput();
    if (!out.isEmpty()) {
        ui->textBrowser_Output->append(QString::fromLocal8Bit(out));
        repaint();
    }
}
QByteArray out = cmd.readAllStandardOutput();
ui->textBrowser_Output->append(QString::fromLocal8Bit(out));
  • 结果
正在 Ping 192.168.0.111 具有 32 字节的数据:

来自 192.168.0.73 的回复: 无法访问目标主机。

来自 192.168.0.73 的回复: 无法访问目标主机。

来自 192.168.0.73 的回复: 无法访问目标主机。

来自 192.168.0.73 的回复: 无法访问目标主机。

192.168.0.111Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),

你可能感兴趣的:(QT)