C#实现Ping的方法小结
本文实例总结了C#实现Ping的方法。分享给大家供大家参考。具体如下:
方法一:
classProgram { publicstringcmdPing(stringstrIP) { ProcessmyProcess=newProcess(); myProcess.StartInfo.FileName="cmd.exe"; myProcess.StartInfo.UseShellExecute=false; //要重定向IO流,Process对象必须将UseShellExecute属性设置为False。 myProcess.StartInfo.RedirectStandardOutput=true; myProcess.StartInfo.RedirectStandardInput=true; myProcess.StartInfo.RedirectStandardError=true; stringpingstr; myProcess.Start(); myProcess.StandardInput.WriteLine("ping"+strIP); myProcess.StandardInput.WriteLine("exit"); stringstrRst=myProcess.StandardOutput.ReadToEnd(); if(strRst.IndexOf("(0%loss)")!=-1) pingstr="连接"; elseif(strRst.IndexOf("Destinationhostunreachable.")!=-1) pingstr="无法到达主机"; elseif(strRst.IndexOf("UnKonwhost")!=-1) pingstr="无法解析主机"; else pingstr=strRst; myProcess.Close(); returnpingstr; } staticvoidMain(string[]args) { ProgrammyProgram=newProgram(); stringreturnString=myProgram.cmdPing("127.0.0.1"); Console.WriteLine(returnString); Console.ReadLine(); } }
方法二:
staticvoidMain(string[]args) { Pingping=newPing(); PingOptionspingOption=newPingOptions(50,true); stringdata="youareasuchabeautifulgirl"; byte[]buffer=Encoding.ASCII.GetBytes(data); PingReplypingReply=ping.Send("192.168.1.100",20,buffer); if(pingReply.Status==IPStatus.Success) { Console.WriteLine("address:{0}",pingReply.Address.ToString()); Console.WriteLine("RoundTriptime{0}",pingReply.RoundtripTime); Console.WriteLine("timetolive:{0}",pingReply.Options.Ttl); Console.WriteLine("Donottofragement:{0}",pingReply.Options.DontFragment); } Console.ReadKey(); }
希望本文所述对大家的C#程序设计有所帮助。