一个C# Process编写的文件执行类

功能:运行一个可执行文件,并重定向它的标准输出stdOut以及错误输出errOut给主程序。

类的所有消息由主程序的事件处理函数myProc_Evnt统一处理,事件的传递细节为:
myProc事件 -> 以字符串方式封装 -> 主程序Invoker -> 主程序事件处理程序
消息格式为:
"myProc.exited" -> 程序执行完毕,退出了,或者进程被杀死了;
"myProc.disposed" -> 控件被销毁。一般是系统发生了意外;
"myProc.stdOut:" -> 收到来自进程的stdOut输出,内容跟在"stdOut:"的冒号后面;
"myProc.errOut:" -> 收到来自进程的errOut输出,内容跟在"stdOut:"的冒号后面。
采用这种消息处理方法,将复杂的参数传递转变为字符串操作,虽然效率有所降低,但是编程处理较为简单。

操作细节见代码。
<script src="https://code.csdn.net/snippets/719706.js"></script>

时间: 2024-12-11 20:26:40

一个C# Process编写的文件执行类的相关文章

C#文件执行类的VB.NET版本

主要区别在于事件处理要采用AddHandler和RemoveHandler,以及AddressOf三个关键字,其它基本一样. VB的操作略微繁琐,但仍然可以实现.

一个由印度人编写的VC串口类

软件介绍 一个由印度人编写的VC串口类(也是一种VC串口控件),他还配合这个类写了VC 串口通信方面的一些基础知识,如怎么用VC打开串口,如何对串口进行配置,读串口.写串口等. 这个类有点特别,它没有使用事件驱动原理,它是以查询方式工作的. 简介: 对没有接触过串口通信的VC程序员来说显得非常困难,很久以前我在 codeguru.com 上搜索过串口通信相关信息得到了非常大的帮助,从那时起能编写一个简单易用的VC 串口类是我的梦想. 经过七个月在串口通信编程方面实践经验后,我编写了一个基于API

JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件

package ioTest.io3; import java.io.File; /* * 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件 . * 并将文件夹和文件名称打印在控制台上面.并且要显示文件目录的层级 * 注:运用了递归的算法. */ public class FileDemo3 { public static void main(String[] args) { File dir=new File("F:\\黑马学习日程\\"); //File dir=new Fi

一个Ini文件解析类CIniFileParse

使用方法非常简单,看看源代码就明白了,该类支持Unicode文本. 一个Ini文件解析类CIniFileParse.rar

oracle下如何执行一个本地的.sql脚本文件

分析: 我们通常在开发过程中会遇到很多程序修改或者批量修改数据的时候,会选择脚本的文件的形式通过命令来执行,那么怎么用plsql或者sqlplus执行sql脚本文件呢? 说明: 如果说现在在c盘盘符下放置了一个我们需要执行的create.sql脚本文件,如果说用sqlplus去执行这个脚本文件: 1.进入到运行命令窗口. 2.登录sqlplus connect username/[email protected]; 3.提示数据库连接成功后,执行脚本文件 @'c:\create.sql';或者

15 友盟项目--资源文件工具类(ResourceUtil)、sql执行工具类(ExecSQLUtil)

资源文件工具类把sql脚本转换为String字符串--->交给sql工具类ExecSQLUtil执行sql 1.资源文件工具类(ResourceUtil) 把sql脚本转换为String字符串 /** * 资源文件工具类 */ public class ResourceUtil { /** * 以String方式读取整个资源串 */ public static String readResourceAsString(String resource ,String charset) throws

一个封装好的CSV文件操作C#类代码

using System.Data; using System.IO; namespace DotNet.Utilities { /// <summary> /// CSV文件转换类 /// </summary> public static class CsvHelper { /// <summary> /// 导出报表为Csv /// </summary> /// <param name="dt">DataTable<

一个实用的C#网页抓取类代码分享

一个实用的C# 网页抓取类 模拟蜘蛛,类中定义了超多的C#采集文章.网页抓取文章的基础技巧,下面分享代码: using System; using System.Data; using System.Configuration; using System.Net; using System.IO; using System.Text; using System.Collections.Generic; using System.Text.RegularExpressions; using Sys

linux下sed命令对文件执行文本替换

让我们看一下 sed 最有用的命令之一,替换命令.使用该命令,可以将特定字符串或匹配的规则表达式用另一个字符串替换.下面是该命令最基本用法的示例: $ sed -e ‘s/foo/bar/’ myfile.txt 上 面的命令将 myfile.txt 中每行第一次出现的 ‘foo’(如果有的话)用字符串 ‘bar’ 替换,然后将该文件内容输出到标准输出.请注意,我说的是每行第一次出现,尽管这通常不是您想要的.在进行字符串替换时,通常想执行全局替换.也就是说, 要替换每行中的所有出现,如下所示: