c#调用cmd的ping命令

private static string CmdPing(string strIp)

{

 Process p = new Process(); p.StartInfo.FileName = "cmd.exe";//设定程序名

p.StartInfo.UseShellExecute = false; //关闭Shell的使用

p.StartInfo.RedirectStandardInput = true;//重定向标准输入

p.StartInfo.RedirectStandardOutput = true;//重定向标准输出

p.StartInfo.RedirectStandardError = true;//重定向错误输出

p.StartInfo.CreateNoWindow = true;//设置不显示窗口

string pingrst; p.Start(); p.StandardInput.WriteLine("ping " + strIp);

p.StandardInput.WriteLine("exit");

string strRst = p.StandardOutput.ReadToEnd();

 if (strRst.IndexOf("(0% loss)") != -1)

{

pingrst = "连接";

}

else if (strRst.IndexOf("Destination host unreachable.") != -1)

{

pingrst = "无法到达目的主机";

}

 else if (strRst.IndexOf("Request timed out.") != -1)

{

pingrst = "超时";

}

else if (strRst.IndexOf("Unknown host") != -1)

{

pingrst = "无法解析主机";

}

else

{

pingrst = strRst;

}

p.Close();

return pingrst;

}

posted @ 2014-05-19 15:29  clown  阅读(2134)  评论(0编辑  收藏  举报