• C#输入输出重定向 方法一:同步process


    使用前需加上:   using System.Diagnostics; 

    同步重定向代码如下:

    第一步:确定必要成分

    1 Process process = new Process();
    2 process.StartInfo.UseShellExecute = false;   // 是否使用外壳程序 
    3 process.StartInfo.CreateNoWindow = true;   //是否在新窗口中启动该进程的值 
    4 process.StartInfo.RedirectStandardInput = true;  // 重定向输入流 
    5 process.StartInfo.RedirectStandardOutput= true;  //重定向输出流 
    6 process.StartInfo.RedirectStandardError= true;  //重定向错误流 

    需要注意的是:若要使用 StandardOutput,必须将 :

    ProcessStartInfo.UseShellExecute = false;

    ProcessStartInfo.RedirectStandardOutput = true;

    否则,读取StandardOutput 流时将引发异常;

    接下来出入执行文件的路径:

    1  process.StartInfo.FileName = "";//待输入的执行文件路径

    第二步:运行新进程

    1 process.Start();
    2 process.StandardInput.WriteLine(textBox1.Text); //从textBox1中输入信息到输入流
    3 string output = process.StandardOutput.ReadToEnd();//获取exe处理之后的输出信息到output
    4 string error = process.StandardError.ReadToEnd(); //获取错误信息到error
    5 process.Close(); //close进程

    这样就可以将原本exe输出到黑框重定向到该程序的output中;

    将错误输出重定向到error中,用于之后的操作;

    值得注意的是:所执行文件的当前目录在 项目\bin\Debug下

  • 相关阅读:
    error while loading shared libraries: libhwloc.so.5: cannot open shared object file: No such file or directory
    Mac刷新DNS,修改/etc/hosts立即生效
    zxing生成识别二维码
    电脑M2接口不是磁盘0问题
    WSL
    Ubuntu安装Docker
    Win10关闭自动更新和防护
    Mysql的5种日志
    开发常用工具Windows
    log4j2高危漏洞
  • 原文地址:https://www.cnblogs.com/Elson8080/p/4398937.html
Copyright © 2020-2023  润新知