private string ExecuteCmd(string command)
{
StringBuilder sb = new StringBuilder();
string version = System.Environment.OSVersion.VersionString;//读取操作系统版本
if (version.Contains("Windows"))
{
using (Process p = new Process())
{
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;//是否指定操作系统外壳进程启动程序
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;//不显示dos命令行窗口
p.Start();//启动cmd.exe
p.StandardInput.WriteLine(command);//输入命令
p.StandardInput.WriteLine("exit");//退出cmd.exe
p.WaitForExit();//等待执行完了,退出cmd.exe
using (StreamReader reader = p.StandardOutput)//截取输出流
{
string line = reader.ReadLine();//每次读取一行
while (!reader.EndOfStream)
{
sb.Append(line).Append("<br />");//在Web中使用<br />换行
line = reader.ReadLine();
}
p.WaitForExit();//等待程序执行完退出进程
p.Close();//关闭进程
reader.Close();//关闭流
}
}
}
return sb.ToString();
}
使用举例:
Label1.Text = ExecuteCmd("ipconfig /all");
Label2.Text = ExecuteCmd("ping www.baidu.com");