2009-12-05 3 views
0

Почему следующее печатает пустую строку вместо «Hello QProcess»?Нет вывода из 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

Потому что нет программы под названием «эхо».

Если вы хотите запустить это через оболочку, вы должны использовать «cmd/C echo Hello QProcess».

В вашей программе также нет ошибок. Если бы вы правильно проверили ошибки, ошибку было бы легче обнаружить.

0

Вы должны обеспечить системную среду для своего proc.

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

echo - это исключительная команда в Windows, которая не имеет исполняемого файла.

Смежные вопросы