zoukankan      html  css  js  c++  java
  • C# 使用ping命令

    方法一:调用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;

    }

    方法二:使用C#中的ping 类

    private void displayReply(PingReply reply) //显示结果

      {

    Ping p1 = new Ping(); //只是演示,没有做错误处理

      PingReply reply = p1.Send("填写ip地址");

      StringBuilder sbuilder ;

      if (reply.Status == IPStatus.Success)

      {

      sbuilder = new StringBuilder();

      sbuilder.Append(string.Format("Address: {0} ", reply.Address.ToString ()));

      sbuilder.Append(string.Format("RoundTrip time: {0} ", reply.RoundtripTime));

      sbuilder.Append(string.Format("Time to live: {0} ", reply.Options.Ttl));

      sbuilder.Append(string.Format("Don't fragment: {0} ", reply.Options.DontFragment));

      sbuilder.Append(string.Format("Buffer size: {0} ", reply.Buffer.Length));

      response.write(sbuilder.ToString());

      }

      else if (reply.Status == IPStatus.TimeOut)  

    {

    response.write("超时");

    }else{

    response.write("失败");

    }

    }

  • 相关阅读:
    2019年面试题1
    面试题
    vsftp多个用户公享同一个文件,但是权限不同
    centos7搭建ftp
    安装v2ra y
    centos7安装lamp
    日升昌面试题
    一些插件
    面试被怼集(字节跳动篇)
    TOMCAT原理详解及请求过程(转载)
  • 原文地址:https://www.cnblogs.com/xiaonanmu/p/3920039.html
Copyright © 2011-2022 走看看