【发布时间】:2012-03-01 23:19:43
【问题描述】:
我尝试在命令行中为命令运行 process.start(),并尝试将输出转换为字符串或一些有用的位置。输出将包含几行(如 DIR 命令)。我读了怎么做,但它对我不起作用。它运行但随后进入循环并且不会停止。见下文。有什么想法吗?
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("cmd.exe",
@" /k dir");
Process myProcess = new Process();
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.StartInfo.UseShellExecute = false;
myProcess.StartInfo.FileName = "cmd.exe";
myProcess.StartInfo.Arguments = @" /k dir";
myProcess.Start();
string ppp = myProcess.StandardOutput.ReadToEnd();
myProcess.WaitForExit();
【问题讨论】:
-
好的,感谢您的快速回复。它对我不起作用......仍然卡住并且什么也不做,如果在一个循环中
-
您可能对this post 感兴趣,它涵盖了使用 .NET 进程的许多复杂性,尤其是在处理输入和输出方面。推荐MedallionShell库,简化处理过程io流
标签: c#