我正试图通过
QProcess process= new QProcess();
process.start("javac file.java");
它成功启动,我可以在qt creator的日志窗口中看到输出。但是当我试图用
QProcess
从程序中读取它时,什么也没读。但是当我想做一些process.start("echo Print this message");
然后
process.readAll()
返回“打印此消息”。有谁能帮我解释为什么会这样,我怎么才能得到这份工作。我想用它做一个简单的ide。
最佳答案
您正在读取进程的标准输出通道,但您的进程在标准错误通道上输出。你两个都要读。您还可以选择合并它们。请参阅QProcess
文档-阅读并确保您理解它。如果有什么不清楚的地方,编辑你的问题,要求澄清。
关于linux - QProcess运行进程,但readAll不返回任何内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32656190/