首页 > 编程 > C# > 正文

C#执行DOS命令的方法

2019-10-29 21:45:40
字体:
来源:转载
供稿:网友
这篇文章主要介绍了C#执行DOS命令的方法,涉及针对进程的调用以及系统DOS命令的使用,具有不错的实用价值,需要的朋友可以参考下
 

本文实例讲述了C#执行DOS命令的方法。分享给大家供大家参考。具体实现方法如下:

在c#程序中,有时会用到调用cmd命令完成一些功能,本文介绍的如下方法,可实现c#执行DOS命令,并返回结果的功能。

 

复制代码代码如下:
//dosCommand Dos命令语句  
public string Execute(string dosCommand)  
{  
    return Execute(dosCommand, 10);  
}  
/// <summary>  
/// 执行DOS命令,返回DOS命令的输出  
/// </summary>  
/// <param name="dosCommand">dos命令</param>  
/// <param name="milliseconds">等待命令执行的时间(单位:毫秒),  
/// 如果设定为0,则无限等待</param>  
/// <returns>返回DOS命令的输出</returns>  
public static string Execute(string command, int seconds)  
{  
    string output = ""; //输出字符串  
    if (command != null && !command.Equals(""))  
    {  
 Process process = new Process();//创建进程对象  
 ProcessStartInfo startInfo = new ProcessStartInfo();  
 startInfo.FileName = "cmd.exe";//设定需要执行的命令  
 startInfo.Arguments = "/C " + command;//“/C”表示执行完命令后马上退出  
 startInfo.UseShellExecute = false;//不使用系统外壳程序启动  
 startInfo.RedirectStandardInput = false;//不重定向输入  
 startInfo.RedirectStandardOutput = true; //重定向输出  
 startInfo.CreateNoWindow = true;//不创建窗口  
 process.StartInfo = startInfo;  
 try  
 {  
     if (process.Start())//开始进程  
     {  
  if (seconds == 0)  
  {  
      process.WaitForExit();//这里无限等待进程结束  
  }  
  else  
  {  
      process.WaitForExit(seconds); //等待进程结束,等待时间为指定的毫秒  
  }  
  output = process.StandardOutput.ReadToEnd();//读取进程的输出  
     }  
 }  
 catch  
 {  
 }  
 finally  
 {  
     if (process != null)  
  process.Close();  
 }  
    }  
    return output;  
}

 

希望本文所述对大家的C#程序设计有所帮助。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表