QProcess运行进程但readAll不返回任何内容

时间:2015-09-18 15:49:46

标签: linux qt process

我想通过

开始QProcess
QProcess process= new QProcess();
process.start("javac file.java"); 

它成功启动,我可以在Qt Creator的日志窗口中看到输出。但是当我尝试使用process.readAll()从程序中读取它时,没有读取任何内容。但是当我尝试做类似

的事情时
process.start("echo Print this message");

然后process.readAll()返回“打印此消息”。

任何人都可以帮助我为什么会这样,我怎样才能做到这一点。我正在尝试用它制作一个简单的IDE。

1 个答案:

答案 0 :(得分:0)

您正在从流程的标准输出通道读取数据,但您的流程在标准错误通道上输出。你需要阅读两者。您还可以选择合并它们。请参阅QProcess文档 - 阅读并确保您理解它。如果有任何不清楚的地方,请编辑您的问题以要求澄清。