Frage

Warum gibt die folgenden Code eine leere Zeile statt ‚Hallo 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()

Ich bin auf Windows XP, btw.

War es hilfreich?

Lösung

Da gibt es kein Programm namens "Echo".

Wenn Sie dies durch die Schale laufen wollen, dann sollten Sie verwendet haben „cmd / C echo Hallo QProcess“.

Ihr Programm hat auch keine Fehlerprüfung. Wenn Sie Fehler richtig der Fehler überprüft haben, wäre einfacher gewesen, zu erkennen.

Andere Tipps

Sie sollten Systemumgebung auf Ihre proc liefern.

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

Echo ist außergewöhnlich Befehl in Windows, die nicht ausführbar hat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top