//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;
}
转载于:https://www.cnblogs.com/tuyile006/p/3623048.html
相关资源:在C#中执行dos命令并返回结果字符串