没有来自QProcess的输出

时间:2009-12-05 11:20:25

标签: python windows qt pyqt qprocess

为什么以下打印空行而不是'Hello QProcess'?

import sys

from PyQt4 import QtGui, QtCore

proc = QtCore.QProcess()
proc.start("echo 'Hello QProcess'")
proc.waitForFinished()
result = proc.readAll()
print result
proc.close()

我在Windows XP上,顺便说一下。

2 个答案:

答案 0 :(得分:2)

因为没有名为“echo”的程序。

如果你想通过shell运行它,那么你应该使用“cmd / C echo Hello QProcess”。

您的程序也没有错误检查。如果您正确检查错误,那么错误就更容易被发现。

答案 1 :(得分:0)

您应该为proc提供系统环境。

proc.setEnvironment(QProcess::systemEnvironment());

echo是Windows中没有可执行文件的异常命令。