Не удалось отправить команды процессу cmd.exe

Я пытаюсь отправить команды в открытый процесс cmd.exe с помощьюStandardInput.WriteLine(str)Однако ни одна из команд, похоже, не отправлена. Сначала я открываю процесс с глобальной переменной p (Process p).

p = new Process()
{
    StartInfo = {
        CreateNoWindow = true,
        UseShellExecute = false,
        RedirectStandardError = true,
        RedirectStandardInput = true,
        RedirectStandardOutput = true,
        FileName = @"cmd.exe",
        Arguments = "/C" //blank arguments
    }
};

p.Start();
p.WaitForExit();

После этого я пытаюсь отправить команду, используя простой метод, который записывает результат в текстовое поле.

private void runcmd(string command)
{
    p.StandardInput.WriteLine(command);
    var output = p.StandardOutput.ReadToEnd();
    TextBox1.Text = output;
}

Прямо сейчас я проверяю это сDIR, ноvar output отображается как ноль, что приводит к отсутствию вывода. Есть ли лучший способ отправить команду процессу open cmd.exe?

Ответы на вопрос(1)

Ваш ответ на вопрос