2009-10-29 60 views
2

我正在尝试从代码与Windows命令提示符进行交互。我的目标是显示提示,输入一些命令,显示输出,然后重复。但似乎无法同时获得前三名工作。如何与C#代码中的命令提示符进行交互?

 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的命令行行为,但我有点不知所措的源代码。

回答

-1

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

相关问题