Вопрос по winforms, c#, console-application, .net – Запустите консольное приложение из формы Windows

4

У меня есть консольное приложение Windows (которое принимает параметры) и запускает процесс. Мне было интересно, есть ли способ запустить это приложение из события нажатия кнопки формы Windows. Я хотел бы также передать аргумент.

Спасибо

Ваш Ответ

2   ответа
4

что у вас есть форма с многострочным текстовым полем с именем txtOutput .....

private void RunCommandLine(string commandText)
    {
        try
        {
            Process proc = new Process();
            proc.StartInfo.CreateNoWindow = true;
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.RedirectStandardOutput = true;
            proc.StartInfo.RedirectStandardError = true;
            proc.StartInfo.FileName = "cmd.exe";
            proc.StartInfo.Arguments = "/c " + commandText;
            txtOutput.Text += "C:\\> " + commandText + "\r\n";
            proc.Start();
            txtOutput.Text += proc.StandardOutput.ReadToEnd().Replace("\n", "\r\n");
            txtOutput.Text += proc.StandardError.ReadToEnd().Replace("\n", "\r\n");
            proc.WaitForExit();
            txtOutput.Refresh();
        }
        catch (Exception ex)
        {
            txtOutput.Text = ex.Message;
        }
    }
7

System.Diagnostics.Process.Start с путем к консольному приложению и параметрами в качестве второго аргумента.

Похожие вопросы