Запуск консольного приложения с параметрами и передача паузы - C#
Формулировка задачи:
Доброго времени суток. Требуется получить информацию о видеофайле и считать её в переменную. Делаю это при помощи ffmpeg. Вот только при запуске как прописать параметр pause, а то закрывается слишком быстро. Через file.cmd это выглядит так:
Пробую через C# вот так:
Однако ffmpeg всё равно сам закрывается почти сразу же и моя программа не успевает ничего считать. В итоге возникает исключение. Подскажите, как передать паузу через аргументы, пожалуйста.
ffmpeg.exe -i video.mkv pause
Process pr = new Process(); pr.StartInfo.FileName = "ffmpeg.exe"; pr.StartInfo.Arguments = "-i video.mkv pause"; pr.Start(); StreamReader myStreamReader = pr.StandardOutput; string ffmpegi = myStreamReader.ReadLine(); Console.WriteLine(ffmpegi); pr.WaitForExit(); pr.Close();
Решение задачи: «Запуск консольного приложения с параметрами и передача паузы»
textual
Листинг программы
private static void Main(string[] args)
{
Process p = new Process
{
StartInfo = new ProcessStartInfo("cmd")
{
UseShellExecute = false,
RedirectStandardInput = true,
RedirectStandardOutput = true
}
};
p.Start();
p.StandardInput.WriteLine("-i video.mkv");
p.StandardInput.WriteLine("pause");
}