C#檢查網絡是否可以連接互聯網


添加引用:

using System.Runtime.InteropServices;

using System.Net.NetworkInformation;

        [DllImport("wininet.dll")]
        private extern static bool InternetGetConnectedState(int Description, int ReservedValue);

        #region 方法一

        /// <summary>
        /// 用於檢查網絡是否可以連接互聯網,true表示連接成功,false表示連接失敗
        /// </summary>
        /// <returns></returns>
        public static bool IsConnectInternet()
        {
            int Description = 0;
            return InternetGetConnectedState(Description, 0);
        }

        #endregion 方法一

        #region 方法二

        /// <summary>
        /// 用於檢查IP地址或域名是否可以使用TCP/IP協議訪問(使用Ping命令),true表示Ping成功,false表示Ping失敗
        /// </summary>
        /// <param name="strIpOrDName">輸入參數,表示IP地址或域名</param>
        /// <returns></returns>
        public static bool PingIpOrDomainName(string strIpOrDName)
        {
            try
            {
                Ping objPingSender = new Ping();
                PingOptions objPinOptions = new PingOptions();
                objPinOptions.DontFragment = true;
                string data = "";
                byte[] buffer = Encoding.UTF8.GetBytes(data);
                int intTimeout = 120;
                PingReply objPinReply = objPingSender.Send(strIpOrDName, intTimeout, buffer, objPinOptions);
                string strInfo = objPinReply.Status.ToString();
                if (strInfo == "Success")
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            catch (Exception)
            {
                return false;
            }
        }

        #endregion 方法二

 

調用我就不寫了,相信大家都會。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM