C#调用外部进程的类,网上可以搜出很多来,为什么要再写一遍,实在是因为最近从网上拷贝了一个简单的例程用到项目中,运行有问题,后来研究了半天,才解决了这些问题。于是打算写这么一篇博文,一来说说调用一个外部进程这么简单的一件事究竟会有哪些问题,二来也希望我写的这个相对比较完整的类可以为软件开发的同道们节约一些脑细胞,以便集中优势兵力解决那些真正高深复杂的软件问题。
在开始正题之前,我们先来看一看网上比较常见的C#调用外部进程:
- privatestringRunCmd(stringcommand)
- {
- //例Process
- Processp=newProcess();
- p.StartInfo.FileName="cmd.exe";
- //确定程序名
- p.StartInfo.Arguments="/c"+command;
- //确定程式命令行
- p.StartInfo.UseShellExecute=false;
- //Shell的使用
- p.StartInfo.RedirectStandardInput=true;
- //重定向输入
- p.StartInfo.RedirectStandardOutput=true;
- //重定向输出
- p.StartInfo.RedirectStandardError=true;
- //重定向输出错误
- p.StartInfo.CreateNoWindow=true;
- //设置置不显示示窗口
- p.Start();//00
- //p.StandardInput.WriteLine(command);
- //也可以用这种方式输入入要行的命令
- //p.StandardInput.WriteLine("exit");
- //要得加上Exit要不然下一行程式
- returnp.StandardOutput.ReadToEnd();
- //输出出流取得命令行结果果
- }
以上介绍C#调用外部进程
【编辑推荐】