zoukankan      html  css  js  c++  java
  • c# process 输入输出

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Net;
    using System.Diagnostics;
    namespace WindowsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
     
            private void Form1_Load(object sender, EventArgs e)
            {
                Process p = new Process();
                p.StartInfo.FileName = "format.com";
                p.StartInfo.Arguments = " G: /FS:FAT /Q";
                p.StartInfo.RedirectStandardInput = true;
                p.StartInfo.RedirectStandardOutput = true;
                p.StartInfo.RedirectStandardError = true;
                p.StartInfo.CreateNoWindow = true;//true表示不显示黑框,false表示显示dos界面 
                p.StartInfo.UseShellExecute = false;
     
     
                p.EnableRaisingEvents = true;
     
                p.Exited += new EventHandler(p_Exited);
                p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived);
                p.ErrorDataReceived += new DataReceivedEventHandler(p_ErrorDataReceived);
     
                p.Start();
                p.StandardInput.WriteLine("");
                p.StandardInput.WriteLine("");
     
                //开始异步读取输出
                p.BeginOutputReadLine();
                p.BeginErrorReadLine();
     
                //调用WaitForExit会等待Exited事件完成后再继续往下执行。
                p.WaitForExit();
                p.Close();
                 
                Console.WriteLine("exit");
     
            }
     
            void p_OutputDataReceived(Object sender, DataReceivedEventArgs e)
            {
                //这里是正常的输出
                Console.WriteLine(e.Data);
     
            }
     
            void p_ErrorDataReceived(Object sender, DataReceivedEventArgs e)
            {
                //这里得到的是错误信息
                Console.WriteLine(e.Data);
     
            }
     
            void p_Exited(Object sender, EventArgs e)
            {
                Console.WriteLine("finish");
            }
     
        }
    }
  • 相关阅读:
    HTTP协议--详解
    汇编语言前五章总结
    [转] vscode C/C++ 插件预定义环境变量(linux)
    C++小细节
    CC++ 如何确定一个变量的类型(恶心的指针)
    Ubuntu下安装tensorflow
    github 上不去
    应用层01-HTTP
    C++ 传递数组引用
    C++ 命令行窗口打印二叉树(图形)
  • 原文地址:https://www.cnblogs.com/zjoch/p/3254625.html
Copyright © 2011-2022 走看看