当前位置 博文首页 > unity工具人的博客:C#判断局域网内计算机是否开机,网络连接是

    unity工具人的博客:C#判断局域网内计算机是否开机,网络连接是

    作者:[db:作者] 时间:2021-07-20 12:34

    ·
    使用如下的C#代码,我们可以判断局域网或者是互联网上的某台计算机,是否处于开机状态,并且,网络连接情况是否正常。
    使用的原理是:通过调用PING的方法,能PING成功的为开机、并且网络连接状态正常。否则处于网络状态不正常或关机。

    引用命名空间

    using System.Net.NetworkInformation;
    

    函数内容

    public void StatusQuery(string ip = "192.168.3.121")//检查计算机是否能正常连接
        {
            string message = "";
            Ping p = new Ping();
            try
            {
                PingReply r = p.Send(ip);
                if (r.Status == IPStatus.Success)
                {
                    message = "Success";
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally {
                if (message == "Success")
                {
                    print("网络连接正常");
                }
                else
                {
                    print("无法连接");
                }
            }
        }
    

    警告:
    在这里插入图片描述

    look这五行代码

                PingReply r = p.Send(ip);
                if (r.Status == IPStatus.Success)
                {
                    message = "Success";
                }
    

    这几行代码必须放进下边的"try{}catch{}finally{}"语句中来执行

            try
            {
              
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
               
            }
    

    为什么?
    因为如果不使用异常语句来处理,那么系统无法Ping通过的时候,会抛出异常,导致程序中断或退出,这好吗这不好!

    cs