QProcess 无输出

0 投票
2 回答
1579 浏览
提问于 2025-04-15 16:43

为什么下面的代码会打印出一个空行,而不是'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

你应该给你的程序提供系统环境。

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

在Windows中,echo是一个特别的命令,它没有可执行文件。

2

因为没有一个叫“echo”的程序。

如果你想通过命令行来运行这个,你应该用“cmd /C echo Hello QProcess”。

你的程序也没有进行错误检查。如果你能好好检查错误,发现问题就会简单很多。

撰写回答