2015-10-13 6 views
-2

Я создал процесс в приложении C# и могу читать выходы и ошибки этого процесса. Перед выполнением каждой команды я очистил буфер StandardInput с помощью Flush(). Но это не работает.Как очистить стандартный ввод процесса?

Как я могу очистить стандартный ввод процесса?

Примечание: Процесс все еще работает, я просто выполняю только команды. например, выполнение команд в cmd.exe.

Мой код process.StandardInput.Flush(); process.StandardInput.Write (команда);

Любая помощь, которая будет оценена.

+0

Я не думаю, что вы можете. Вы можете прочитать все это, но даже тогда, как вы знаете, где остановиться? Вы уверены, что ваша проблема не может быть решена другими способами? – spender

+0

Мне нужно очистить входной буфер перед выполнением команды, когда процесс остановлен, и я знаю, что процесс завершен, – Rengasamy

+0

@spender изменил вопрос – Rengasamy

ответ

1

К тому времени, когда вы ввели стандартный ввод, уже слишком поздно. Flush служит только для отправки данных (и я не уверен, что он даже делает что-либо в случае стандартного ввода-вывода - я этого не ожидаю), это не clear ничего. Если вы не хотите что-то на стандартном входе, не отправляйте его в первую очередь.

Смежные вопросы