Terminal kullanımı sırasında çalıştırdığınız uygulamalar bazen uzun süreler boyunca sonuçlanmıyor veya ekran çıktısını takip etmeniz gerekebiliyor. Bu tip durumlarda EventHandler kullanarak ekran çıktısını yakalayabilirsiniz.
Burada ffmpeg kullanılarak sonucun nasıl alınacağı gösterilmiştir.

public void Main()
{
Process process = new Process();
process.StartInfo.FileName = path + "ffmpeg.exe";
process.StartInfo.WorkingDirectory = path;
process.StartInfo.Arguments = "-f concat -i videolar.txt -t 22 -i ses.mp3 -c:a copy video.mp4";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;


process.OutputDataReceived += new DataReceivedEventHandler(OutputHandler);
process.ErrorDataReceived += new DataReceivedEventHandler(OutputHandler);

process.Start();
process.BeginOutputReadLine();
process.BeginErrorReadLine();
process.WaitForExit();
}
static void OutputHandler(object sendingProcess, DataReceivedEventArgs outLine)
{
Debug.WriteLine(outLine.Data);
}

Yorumlar

Bu kod parçacığına henüz yorum yapılmamış.

Yorum Yaz

Yorum yazabilmek için üye olunuz veya giriş yapınız