System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.FileName="id";
proc.StartInfo.Arguments="-un";
proc.Start();
string nome_user = proc.StandardOutput.ReadLine();
proc.WaitForExit();
嗨,我试图使用Mono GTK#运行shell命令。当调试器在 proc.Start(); 行上时,添加到watch的 proc.StandardOutput.ReadLine()会正确显示输出,但是当调试器跳转到下一行( string nome_user = proc.StandardOutput.ReadLine(); ),没有理由将 proc.StandardOutput.ReadLine()的值变为null。你能救我吗?
答案 0 :(得分:1)
好吧,如果您在调试器中读取它,它已经从流中消耗掉了。流不会神奇地倒带,因此可以再次阅读。