//dosCommand Dos命令语句

public string Execute(string dosCommand)

{

return Execute(dosCommand, 10);

}

///

/// 执行DOS命令,返回DOS命令的输出

///

/// dos命令

/// 等待命令执行的时间(单位:毫秒),

/// 如果设定为0,则无限等待

/// 返回DOS命令的输出

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;

}

 

查看原文