IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Process -Récupérer et afficher l'output


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut Process -Récupérer et afficher l'output
    Bonjour,

    Je n'arrive pas à afficher le standard output d'un process (ffmpeg.exe: il s'agit d'une appli fenêtrée pour convertir des vidéos au format flv), je ne comprends vraiment pas pourquoi, mon code simplifié ressemble à cela :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    this.proc = new Process();
    this.proc.EnableRaisingEvents = false;
    this.proc.StartInfo.FileName = this.path+"\\ffmpeg.exe";
    this.proc.StartInfo.UseShellExecute = false;
    this.proc.StartInfo.CreateNoWindow = true;
    this.proc.StartInfo.RedirectStandardOutput = true;
    this.proc.StartInfo.RedirectStandardError = true;
     
    this.proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
    this.proc.OutputDataReceived += new DataReceivedEventHandler(this.readOutput);
    this.proc.ErrorDataReceived += new DataReceivedEventHandler(this.readOutput);
     
    this.proc.Start();
    this.proc.WaitForExit();
    this.proc.Close();
     
    private void readOutput(object sender, DataReceivedEventArgs e)
    {
         this.result.AppendText(e.Data); // result = RichTextBox
    }
    J'ai essayé multiples façons (sans gérer avec l'écouteur par exemple) rien à faire, comme dans les exemples que j'ai trouvé (y compris avec FFMPEG) tout le monde semblait +/- faire comme cela, je m'interroge

    Merci de votre aide !

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Juste après le Start(), il faut rajouter ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                this.proc.BeginErrorReadLine();
                this.proc.BeginOutputReadLine();

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut
    Et là, je me sens bête

    Merci beaucoup, j'ajoute le tag.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP-JS] Récupérer et afficher un lien
    Par artotal dans le forum Langage
    Réponses: 4
    Dernier message: 05/09/2007, 17h05
  2. TextInput Récupérer et Afficher données
    Par hugo1992 dans le forum Flash
    Réponses: 2
    Dernier message: 07/06/2007, 07h29
  3. Réponses: 2
    Dernier message: 29/01/2007, 10h11
  4. Récupérer et afficher le nom d'utilisateur
    Par javelot69 dans le forum Access
    Réponses: 33
    Dernier message: 07/08/2006, 08h37
  5. [JSP][Process] Récupérer message
    Par hedgehog dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 20/07/2005, 13h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo