>将外部工具与C#集成:执行命令行并捕获输出
c#提供了与外部命令行应用程序交互的强大功能。 常见用例涉及运行比较工具(例如diff)并在C#应用程序中显示结果。本指南详细介绍了该过程。
第一步涉及创建一个Process
>对象,禁用外壳执行并启用标准输出重定向:
<code class="language-csharp">Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true;</code>
下一步,指定命令行程序或批处理文件要执行(例如,YOURBATCHFILE.bat
):
<code class="language-csharp">p.StartInfo.FileName = "YOURBATCHFILE.bat";</code>>异步启动过程;在检索输出之前,请勿等待完成:
<code class="language-csharp">p.Start();</code>>使用
>检索标准输出,然后等待该过程完成:ReadToEnd()
<code class="language-csharp">string output = p.StandardOutput.ReadToEnd(); p.WaitForExit();</code>字符串现在保留了命令行执行的结果,可以在C#应用程序中显示或进一步处理。
output
基于Microsoft的MSDN文档,此方法提供了一种可靠的方法来执行命令行程序并在C#中检索其输出
以上是如何在C#中执行命令行并捕获其输出?的详细内容。更多信息请关注PHP中文网其他相关文章!