2009-12-05 107 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

因爲沒有叫做「回聲」的程序。

如果你想通過shell來運行這個,那麼你應該使用「CMD/C回聲你好QProcess中」。

您的程序也沒有錯誤檢查。如果你正確地檢查了錯誤,錯誤會更容易被發現。

0

您應該爲您的proc提供系統環境。

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

echo是Windows中沒有可執行文件的例外命令。