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.111 的
Ping 统计信息:
数据包: 已发送 =
4,已接收 =
4,丢失 =
0 (
0% 丢失),