Я думаю, что у класса процесса C # есть проблема с принятием символов <
или >
, когда они передаются как параметры.
Когда я вызываю следующий код, исполняемый файл возвращает мне ошибку, указывающую, чтоЯ передал более одного аргумента.
proc = new Process();
proc.StartInfo.FileName = this.spumux.SpumuxExe;
proc.StartInfo.Arguments = "menu.xml < menu.mpg > newmenu.mpg";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
proc.EnableRaisingEvents = true;
proc.OutputDataReceived += new DataReceivedEventHandler(OutputHandler);
proc.ErrorDataReceived += new DataReceivedEventHandler(OutputHandler);
proc.Exited += new EventHandler(ProcExited);
proc.Start();
proc.BeginOutputReadLine();
proc.BeginErrorReadLine();
Этот код обычно работал с любым другим исполняемым файлом, который я пробовал до сих пор, без каких-либо проблем.Так что надо что-то делать с <
, >
символами
Есть идеи?