C#执行CMD命令并接收返回结果的实现方法
2016-11-23 11:38
495 查看
1.引入
using System.Diagnostics;
2.创建执行CMD
Process CmdProcess = new Process(); CmdProcess.StartInfo.FileName = "cmd.exe";
3.配置开发方式输入输出错误
CmdProcess.StartInfo.CreateNoWindow = true; // 不创建新窗口 CmdProcess.StartInfo.UseShellExecute = false; //不启用shell启动进程 CmdProcess.StartInfo.RedirectStandardInput = true; // 重定向输入 CmdProcess.StartInfo.RedirectStandardOutput = true; // 重定向标准输出 CmdProcess.StartInfo.RedirectStandardError = true; // 重定向错误输出
4.执行cmd且获取返回值
方法一CmdProcess.StartInfo.Arguments = "/c " + "=====cmd命令======";//“/C”表示执行完命令后马上退出 CmdProcess.Start();//执行 CmdProcess.StandardOutput.ReadToEnd();//获取返回值 CmdProcess.WaitForExit();//等待程序执行完退出进程 CmdProcess.Close();//结束
方法二
CmdProcess.StandardInput.WriteLine(str + "&exit"); //向cmd窗口发送输入信息 CmdProcess.StandardInput.AutoFlush = true; //提交 CmdProcess.Start();//执行 CmdProcess.StandardOutput.ReadToEnd();//输出 CmdProcess.WaitForExit();//等待程序执行完退出进程 CmdProcess.Close();//结束
5.输出返回值
首先 引入using System.IO;
StreamReader sr =CmdProcess.StandardOutput;//获取返回值 string line = ""; int num = 1; while ((line=sr.ReadLine())!=null) { if(line!="") { Console.WriteLine(line + " " + num++); } }
6.Process 的 HasExited属性
//等待程序执行完退出进程 CmdProcess.WaitForExit(); //判断程序是退出了进程 退出为true(上面的退出方法执行完后,HasExited的返回值为 true) falg = CmdProcess.HasExited;
相关文章推荐
- C#执行CMD命令并接收返回结果的实现方法
- C#执行CMD命令并返回结果
- java实现执行CMD命令,并返回输入结果
- Java执行cmd命令并接收返回结果
- webBrowser执行js的方法,并返回值,c#后台取值的实现
- c#执行cmd命令并获取返回结果字符串
- C#实现发送和接收pop3邮件方法
- c#执行cmd命令,并返回字符串
- 在C#中执行dos命令并返回结果字符串
- hibernate 原生sql返回结果执行AddEntity方法
- 使用PreparedStatement的execute方法执行sql插入语句,执行成功,但是返回结果却为false
- C# 执行存储过程返回小数的输出值的设置方法
- c# List find()方法返回值的问题说明(返回结果为对象的指针)
- C#反射动态调用dll中的方法,并返回结果
- hibernate 原生sql返回结果执行AddEntity方法
- 在程序中调用外部程序,用process返回命令执行结果以及抓取错误信息的方法
- C#方法延迟返回结果
- 执行远程server上的命令并返回结果之两各方法
- C# 数据库sql中用参数的方法来执行UPDATE命令,实现更新dataTime类型
- C#中执行dos命令,返回结果值