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

系统 1516 0

这个问题来自论坛提问,答案如下.这只是一个简单的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,dReadLineonReadLine)
... {
System.Diagnostics.Processp
= 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.StreamReaderreader
= p.StandardOutput; // 截取输出流
string line = reader.ReadLine(); // 每次读取一行
while ( ! reader.EndOfStream)
... {
onReadLine(line);
line
= reader.ReadLine();
}

p.WaitForExit();
}


private void button1_Click( object sender,EventArgse)
... {
excuteCommand(
" ipconfig " , "" , new dReadLine(PrintMessage));
}

private void PrintMessage( string strLine)
... {
this .textBox1.Text += strLine + " " ;
}

}

}

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


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论