Pregunta

¿Por qué la siguiente impresión de una línea en blanco en lugar de 'Hola 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()

Estoy en Windows XP, por cierto.

¿Fue útil?

Solución

Debido a que no hay ningún programa llamado "eco".

Si desea ejecutar esto a través de la cáscara, entonces debería haber utilizado "cmd / C echo Hola QProcess".

Su programa también tiene ninguna comprobación de errores. Si hiciéramos el registro de errores adecuadamente el error hubiera sido más fácil de detectar.

Otros consejos

Usted debe proporcionar el entorno del sistema a su proc.

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

eco es excepcional dominio de Windows que no tiene ejecutable.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top