程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c#中重定向windows控制台程序的輸出信息,

c#中重定向windows控制台程序的輸出信息,

編輯:C#入門知識

c#中重定向windows控制台程序的輸出信息,


這個問題來自論壇提問,答案如下.這只是一個簡單的ipconfig命令.如果是復雜的,比如oracle的exp之類的命令,能在調用的時候顯示出來,還是相當酷的.

 using  System;
 using  System.Windows.Forms;
 
 namespace  WindowsApplication8
 {
      public   partial   class  Form1 : Form
      {
          public  Form1()
          {
             InitializeComponent();
         } 
 
          delegate   void  dReadLine( string  strLine);
          private   void  excuteCommand( string  strFile,  string  args, dReadLine onReadLine)
          {
             System.Diagnostics.Process p  =   new  System.Diagnostics.Process();
             p.StartInfo  =   new  System.Diagnostics.ProcessStartInfo();
             p.StartInfo.FileName  =  strFile;
             p.StartInfo.Arguments  =  args;
             p.StartInfo.WindowStyle  =  System.Diagnostics.ProcessWindowStyle.Hidden;
             p.StartInfo.RedirectStandardOutput  =   true ;
             p.StartInfo.UseShellExecute  =   false ;
             p.StartInfo.CreateNoWindow  =   true ;
             p.Start();
             System.IO.StreamReader reader  =  p.StandardOutput; // 截取輸出流 
              string  line  =  reader.ReadLine(); // 每次讀取一行 
              while  ( ! reader.EndOfStream)
              {
                 onReadLine(line);
                 line  =  reader.ReadLine();
             } 
             p.WaitForExit();
         } 
 
          private   void  button1_Click( object  sender, EventArgs e)
          {
             excuteCommand( " ipconfig " ,  "" ,  new  dReadLine(PrintMessage));
         } 
          private   void  PrintMessage( string  strLine)
          {
              this .textBox1.Text  +=  strLine  +   " " ;
         } 
     } 
 }/* 何問起 hovertree.com */

推薦:http://www.cnblogs.com/roucheng/p/3521864.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved