Für die Berechnung eines Zahnradstirnschnittes habe ich in QCAD Prof. eine Benutzeroberfläche designed und
in ein Skript eingebunden.
Die eingegebene Daten werden in eine Datei geschrieben und sollen an ein externes Programm übergeben werden.
Das externe Programm berechnet die Form einer Zahnlücke und schreibt diese in eine weitere Datei. Anschließend soll
diese Datei gelesen und in QCAD dargestellt werden.
Wie kann ich in einem javacript ein Prozeß starten, der als Argument die Datei mit den Verzahnungsdaten bekommt?
Prozess aus javascript starten
Forum rules
Immer Betriebssystem und QCAD Version angeben.
Zeichnungsdateien und Bildschirmfotos beifügen.
Eine Frage pro Topic.
Immer Betriebssystem und QCAD Version angeben.
Zeichnungsdateien und Bildschirmfotos beifügen.
Eine Frage pro Topic.
Re: Prozess aus javascript starten
Hier ein kleines Beispiel (startet das Programm 'myapp' mit argument 'myfile.dat'):
// application binary: var program = "myapp"; // arguments: var args = [ "myfile.dat" ]; // additional environment variables: var environment = [ ["MYENVVAR", 1] ]; var process = new QProcess(); // error handling: process.error.connect(function(e) { qDebug("Error: ", e); }); // buffer stdout, stderr for later output: var stdout = ""; var stderr = ""; process.readyReadStandardOutput.connect(function() { stdout += process.readAllStandardOutput(); }); process.readyReadStandardError.connect(function() { stderr += process.readAllStandardError(); }); // set enviromnet to current environment, add custom environment: if (environment!==undefined) { var env = QProcessEnvironment.systemEnvironment(); for (var i=0; i<environment.length; i++) { env.insert(environment[0], environment[1]); } process.setProcessEnvironment(env); } // start process: process.start(program, args); // wait for process to finish: process.waitForFinished(-1); // no timeout // output buffered stdout, stderr: qDebug(stdout); qDebug(stderr);