如何从命令行捕获stdout?我尝试在命令行中为命令运行process.start()并尝试将输出转换为字符串或一些有用的位置。输出将包含多行(如DIR命令)。我阅读了操作方法,但它对我不起作用。它运行但随后进入循环而不停止。见下文。有任何想法吗?ProcessStartInfomyProcessStartInfo=newProcessStartInfo("cmd.exe",@"/kdir");进程myProcess=newProcess();myProcess.StartInfo.RedirectStandardOutput=true;myProcess.StartInfo.UseShellExecute=false;myProcess.StartInfo.FileName="cmd.exe";myProcess.StartInfo.Arguments=@"/kdir";myProcess.Start();stringppp=myProcess.StandardOutput.ReadToEnd();myProcess.WaitForExit();您的进程永远不会自行退出,因为您将/K标志传递给cmd.exe,这将使窗口在运行命令后保持打开状态(因此进程处于活动状态)。/K执行字符串指定的命令,但我仍然认为您在这里寻找的是使用/C,它会在运行您的命令后关闭命令窗口。/C执行字符串指定的命令,然后终止。以上就是C#学习教程:如何从命令行捕获标准输出?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
