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

这个问题来自论坛提问,答案如下.这只是一个简单的ipconfig命令.如果是复杂的,比如oracle的exp之类的命令,能在调用的时候显示出来,还是相当酷的.推荐:http://www.cnblog

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

这个问题来自论坛提问,答案如下.这只是一个简单的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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120333.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月27日 下午12:00
下一篇 2021年12月27日 下午12:00


相关推荐

  • leetcode 三数之和_leetcode数组

    leetcode 三数之和_leetcode数组原题链接给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[] 提示:0 <= nums.length <= 300

    2022年8月9日
    3
  • ArcGIS转换坐标系_不同坐标系之间的转换

    ArcGIS转换坐标系_不同坐标系之间的转换ArcGIS 基础8-坐标系转换

    2022年4月20日
    72
  • 免费在线绘制CircRNA吸附miRNA圈图

    免费在线绘制CircRNA吸附miRNA圈图什么是环状 RNA 环状 RNA circularRNA circRNA 是一类没有 5 帽子和 3 poly A 尾巴的环状闭合非编码 RNA 分子 如上图所示 基因组上的外显子 1 2 3 4 5 6 可以转录形成线性 RNA 分子 例如右侧中间的线性 RNA 分子由 1 2 3 4 5 6 号外显子形成 右侧下边的线性 RNA 分子由 1 2 4 5 6 号外显子形成 不同的转录本 这些线性 RNA 带有 5 帽子和 3 polyA 尾巴 而大部分由外显子组成的环状 RNA exoniccircRN 是通过外显子

    2026年3月16日
    2
  • process returned -1073741571_0x0000007a电脑蓝屏

    process returned -1073741571_0x0000007a电脑蓝屏前言C++运行报错:Processreturned-1073741819(0xC0000005)是真的坑!!!申请的内存没有释放new后必须deletemalloc后必须free创建内核对象(比如CreateFile,CreateMutex,CreateThread),后必须释放内核对象句柄.创建内存映射文件,CreateFileMapping,MapViewOfFile后必须…

    2022年10月4日
    4
  • Sqlite #1 命令行工具sqlite3

    Sqlite #1 命令行工具sqlite3

    2021年9月3日
    65
  • oracle安装教程以及使用注意事项

    oracle安装教程以及使用注意事项oracle 安装包下载 http download oracle com otn nt oracle11g win32 11gR2 database 1of2 ziphttp download oracle com otn nt oracle11g win32 11gR2 database 2of2 zipSQLDevelo 下载地址

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号