为什么以下打印空行而不是'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上,顺便说一下。
答案 0 :(得分:2)
因为没有名为“echo”的程序。
如果你想通过shell运行它,那么你应该使用“cmd / C echo Hello QProcess”。
您的程序也没有错误检查。如果您正确检查错误,那么错误就更容易被发现。
答案 1 :(得分:0)
您应该为proc提供系统环境。
proc.setEnvironment(QProcess::systemEnvironment());
echo是Windows中没有可执行文件的异常命令。