Envoyé par : the_glu
Date : 03/03/2007 13:42
J'essaie de récupérer la sortie d'un processus que j'exécute comme suit :
// Créer un nsILocalFile pour l'exécutable
var file = Components.classes["@mozilla.org/file/local;1"]
                     .createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(command);
// Créer un nsIProcess
var process = Components.classes["@mozilla.org/process/util;1"]
                        .createInstance(Components.interfaces.nsIProcess);
process.init(file);
// Lancer le processus.
// Si le premier paramètre est true, l'appel du processus sera bloqué
// jusqu'à ce qu'il soit terminé.
// Les deuxième et troisième paramètres servent à passer des arguments
// en ligne de commande au processus.
 var args = arg.split(' ');
process.run(false, args, args.length);
Seulement je ne sais pas comment faire. J'ai essayé en rajoutant " > /tmp/monfichier" dans les arguements, mais ça ne fonctionne pas.
Quelqu'un à une idée ? Un exemple de code autre que celui-ci qui fonctionnerais ?
Merci d'avance.
Envoyé par : Paul Rouget
Date : 03/03/2007 16:03
> /tmp/monfichier
Ça c'est un élément du shell, pas un argument du programme.
Fais un script shell qui redirige la sortie standard, du genre:
redirect.sh -p [programme_a_executer] -a [arguments] -o [fichier_de_sortie]
Ou alors, si tu peux, fais ça dans un composant C++, pour le coup, c'est très simple.
Envoyé par : the_glu
Date : 03/03/2007 16:04
Ou alors, si tu peux, fais ça dans un composant C++, pour le coup, c'est très simple.
D'accord, comment ? Je doit pourvoir faire ça sous Windows ET linux...
Envoyé par : Paul Rouget
Date : 03/03/2007 23:07
et bien fait un composant pour Windows et Linux :)
Si tu n'es pas à l'aise avec le C++ ou les composants XPCom, fais plutôt un script shell.
Envoyé par : the_glu
Date : 03/03/2007 23:22
Ok, ça passe pour les scripts shells !
Merci !
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.