读取分离进程的控制台输出
Reading console output of a detached process
嗨,我正在使用QProcess从Qt发射一个分离的进程。我想在QString中读取进程的控制台输出。下面是代码
#include <QCoreApplication>
#include <QProcess>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QProcess proc;
proc.startDetached("C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe",
QStringList() << "/c" << "c:\Qt\Qt5.3.0\Tools\QtCreator\bin\tryScript\firstBatch.bat");
proc.waitForFinished();
qDebug() << proc.readAllStandardOutput();
return a.exec();
}
QProcess::startDetached
不是成员函数,它是静态函数,所以
proc.startDetached(...)
等价于:
QProcess::startDetached(...)
因此,在分离进程的proc
变量中没有状态或输出。如果您想将该进程作为应用程序的子进程启动并读取其输出,请使用start()
方法。
相关文章:
- C++:将控制台输出存储在宏中更好吗
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 控制台输出在 Qt5 中未正确显示
- 有人可以向我解释为什么控制台输出 0 吗?
- 使用 std::string_view 的子字符串控制台输出
- C++ 如何暂停控制台输出,以便用户可以在继续之前阅读信息
- 我如何阅读简单的控制台输出
- 是否可以在 RTL(从右到左)中制作控制台输出?
- 如何让控制台输出覆盖控制台而不是纯文本输出?
- 乱码控制台输出管道 stderr 到更多
- 将控制台输出写入.txt并在控制台上显示
- 当被一个输入分开时,有两个控制台输出同时显示
- VSCode C++调试捕获控制台输出
- 如何将控制台输出中的所有内容复制到文本文件?
- C++ 使用简单的代码同时写入文件和控制台输出
- 使控制台输出是否"verbose"的最快方法
- 将 ffmpeg 控制台输出重定向到C++中的字符串或文件
- C++ 控制台输出到 cmd 在重复十次后出错
- 从控制台输出读取 C++
- 如何将控制台输出的文本颜色更改为红色,但如果从Powershell或CMD运行,背景将保持相同的颜色