C#使用命令行方式实现Ping简单功能 http://www.cnblogs.com/kevinton/archive/2007/06/28/798581.html
2007-07-27 19:29
1281 查看
using System.Diagnostics;
.......
private string CmdPing(string strIP)
{
string pingRst;
Process p = new Process();
p.StartInfo.FileName="cmd.exe";
p.StartInfo.UseShellExecute=false;
p.StartInfo.RedirectStandardError=true;
p.StartInfo.RedirectStandardInput=true;
p.StartInfo.RedirectStandardOutput=true;
p.StartInfo.CreateNoWindow=true; //不显示命令行窗口
p.Start();
p.StandardInput.WriteLine("ping -n 1 "+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("Unknow host")!=-1) pingRst="无法解析主机";
else pingRst=strRst;
p.Close();
return pingRst;
}
.......
private string CmdPing(string strIP)
{
string pingRst;
Process p = new Process();
p.StartInfo.FileName="cmd.exe";
p.StartInfo.UseShellExecute=false;
p.StartInfo.RedirectStandardError=true;
p.StartInfo.RedirectStandardInput=true;
p.StartInfo.RedirectStandardOutput=true;
p.StartInfo.CreateNoWindow=true; //不显示命令行窗口
p.Start();
p.StandardInput.WriteLine("ping -n 1 "+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("Unknow host")!=-1) pingRst="无法解析主机";
else pingRst=strRst;
p.Close();
return pingRst;
}
相关文章推荐
- C#使用命令行方式实现Ping简单功能
- C# BackgroundWorker的使用【转-http://www.cnblogs.com/tom-tong/archive/2012/02/22/2363965.html】
- SQL优化--使用分析函数(转自:http://www.cnblogs.com/zping/archive/2008/08/06/1261973.html)
- XPath语法 在C#中使用XPath示例 【转http://www.cnblogs.com/yukaizhao/archive/2011/07/25/xpath.html】非常详细的文章
- C# 调用C++的dll,通过DllImport方式。 from http://www.cnblogs.com/xiaokang088/archive/2011/04/08/2009673.html
- 使用Sqlserver事务发布实现数据同步(引:http://www.cnblogs.com/daizhj/archive/2009/11/18/1605293.html )
- Android实现推送方式解决方案【转载地址:http://www.cnblogs.com/hanyonglu/archive/2012/03/04/2378971.html】
- 存储过程使用事物的几种方式 转载自--http://www.cnblogs.com/chengxiaoming/archive/2010/06/11/1756163.html
- C# winform 登录窗体 记住密码的实现 --来源http://www.cnblogs.com/ou444/archive/2011/09/13/2174911.html
- A*算法的C#实现 -最短路径--摘自http://www.cnblogs.com/China-Dragon/archive/2009/11/23/1608803.html
- C# 实现的多线程异步Socket数据包接收器框架(来源http://www.cnblogs.com/wcfgroup/archive/2008/10/06/1304512.html)
- hadoop使用javaAPI实现hdfs常见操作(转载于http://www.cnblogs.com/xuqiang/archive/2011/06/03/2042526.html)
- SQL优化--使用 EXISTS 代替 IN 和 关联查询(inner join) (转载)http://www.cnblogs.com/zping/archive/2008/08/05/1260959.html
- vs2005下彩色验证码的实现(可自由定义是否加入干扰点、验证码位数等验证码显示效果) <br />转自<a href="http://www.cnblogs.com/zm235/archive/2006/10/02/520233.html" target="_blank">http://www.cnblogs.com/zm235/archive/2006/10/02/520233.html</a>
- C# 启动外部程序的几种方法(转自:http://www.cnblogs.com/Slxj/archive/2012/01/12/2320531.html)
- eclipse中安装ADT插件的最简单的方法转载自http://www.cnblogs.com/go-onxp/archive/2012/05/22/android.html
- AjaxPro使用说明转自http://www.cnblogs.com/lexus/archive/2007/11/29/977281.html
- C# 线程操作 转自http://www.cnblogs.com/mugua604/archive/2008/04/27/1172692.html
- linux下使用tar命令 (转至http://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.html)
- JS间隔性滚动代码[修正增加了部分功能] 【转:http://www.cnblogs.com/robot/archive/2008/04/09/1144568.html】