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 :
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
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 }
Merci de votre aide !
Partager