2

我正在尝试通过代码与 Windows 命令提示符进行交互。我的目标是显示提示,输入一些命令,显示输出,然后重复。但似乎无法让前三个同时工作。

      private void button2_Click(object sender, EventArgs e)
      {
        Process proc = new Process();
        proc.StartInfo.FileName = "cmd";
        proc.StartInfo.CreateNoWindow = true;
        proc.StartInfo.UseShellExecute = false;
        proc.StartInfo.RedirectStandardOutput = true;
        proc.StartInfo.RedirectStandardInput = true;

        proc.Start();
        StreamReader k = new StreamReader(proc.StandardOutput.BaseStream);

        textBox2.Text = k.ReadToEnd();            
       }

上面的代码只是挂起。如果我不设置 RedirectStandardInput,那么我可以显示整个提示。如果我关闭 StandardInput 的编写器,我可以运行命令,但看不到提示,也无法重复它。那么如何让提示显示、运行命令并重复显示输出...?

我希望重现Console2的命令行行为,但我对它的源代码有点不知所措。

4

2 回答 2

1

检查http://www.codeproject.com/cs/library/CommandLineHelper.asp

[marc_s] 该 URL 导致找不到 404 页面。

正确的 URL 最有可能是: http: //www.codeproject.com/KB/string/CommandLineHelper.aspx

于 2009-10-29T05:41:39.473 回答
-1

我想你不能。如果您显示控制台命令提示,您将无法读取输出。如果您阅读进程的输出,我认为您需要绘制自己的命令提示符。

于 2009-10-29T05:46:04.977 回答