初探.NET判断Windows网络连接之突然断开或连接

    技术2024-12-03  24

        

        System.Net.NetworkInformation命名空间下

     

    1、NetworkInterface类提供了网络接口的配置和统计信息。

    如果要获得本地计算机的网络接口(网卡)信息,则使用该类下的GetAllNetworkInterfaces()方法。

    如:NetworkInterface[] nics= NetworkInterface.GetAllNetworkInterfaces();

    nics包括本机的所有网卡对象,包含网卡的名称、ID、连接状态、连接类型等。

     

     

    2、NetworkChange类提供了网络接口的Internet协议地址发生改变时收到的通知。

    当网卡禁用或IP地址发生改变时触发NetworkAddressChanged事件。如果你的应用程序需要在网络断开时做特出处理,则此事件能满足你的要求。如:

    NetworkChange.NetworkAddressChanged += new            NetworkAddressChangedEventHandler(AddressChangedCallback);            MessageBox.Show("Listening for address changes.");

     

    private void AddressChangedCallback(object sender, EventArgs e)        {

                MessageBox.Show(string.Format("IsNetworkAvailable is {0}", NetworkInterface.GetIsNetworkAvailable()));

                NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();            foreach (NetworkInterface n in adapters)            {                string aa = string.Format("OperationalStatus is {0}/r/n", n.OperationalStatus);                aa += string.Format("NetworkInterfaceType is {0}/r/n", n.NetworkInterfaceType);                aa += string.Format("Name is {0}", n.Name);                MessageBox.Show(aa);            }

                        }

     

      

    最新回复(0)