Perl-Script starten und Ergebnis auswerten

Alles rund um die Programmierung mit Qt
Antworten
Scary Hallo

Perl-Script starten und Ergebnis auswerten

Beitrag von Scary Hallo »

Hallo
ich will aus meiner Applikation ein Perl-Skript starten und dessen Textausgabe parsen. Starten tue ich es mit QProcess::start(). Nun meine Fragen.
1. wie kann ich prüfen ob es korrekt gestartet wurde.
2. wie komme ich an die Ausgabe der Skripts

Vielleicht kann mir jemand ein Beispiel sagen
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

QProcess hast du ja schon entdeckt.
Schau dir da mal die SIGNALS an. Dich interessieren
* readyRead, bzw. die spezialisierten readyReadStandardOutput und readyReadStandardError, um zu erfahren, dass neue Daten vorliegen
* finished(), um mitzubekommen dass der Prozess fertig ist.
* error(), wo du als Parameter gleich den Fehlergrund mitgeliefert bekommst.

VOR dem start() musst du die gewünschten SIGNALS mit eigenen SLOTS connecten. In den SLOTS liest du dann mit read() oder readAll() die Daten, bzw. auf Fehler reagieren.

Die schnelle, etwas unschönere Methode wäre auf den process per waitForFinished() zu warten, das blockiert aber, deine GUI wird hängen usw.
Scary Hallo

Beitrag von Scary Hallo »

Danke für die schnelle Antwort. Ich habe beide Methoden versucht aber ich bekomme nur ein leeres Bytearray zurück. Ich glaube ich habe ein Problem beim starten.
Antworten