C# İnternet Bağlantısını Kontrol Etme

C# İnternet Bağlantısını Kontrol Etme


Bazı uygulamalarda, internet bağlantısının olup olmadığını kontrol etmemiz gerekebilir.Bunun için aşağıdaki kodlar kullanılabilir.

Örnek
Console projesi oluşturalım ve şu kodları ekleyelim.

using System;
using System.Runtime.InteropServices;

namespace BaglantiKontrol
{
    class Program
    {
        static void Main(string[] args)
        {
            BaglantiKontrol();
            Console.ReadKey();
        }

        public static void BaglantiKontrol()
        {
            InternetGetConnectedStateFlags flags = 0;
            bool baglanti = InternetGetConnectedState(ref flags, 0);
            string sonuc = "";
            if (baglanti)
                sonuc = "İnternet bağlantısı var.";
            else
                sonuc = "İnternet Bağlantısı Yok";
            Console.Write(sonuc);
            Console.ReadKey();
        }

        [DllImport("wininet.dll", CharSet = CharSet.Auto)]
        extern static bool InternetGetConnectedState(ref InternetGetConnectedStateFlags Description, int ReservedValue);

        [Flags]
        public enum InternetGetConnectedStateFlags
        {
            INTERNET_CONNECTION_MODEM = 0x01,          //Yerel sistem İnternet'e bağlanmak için bir modem kullanır.
            INTERNET_CONNECTION_LAN = 0x02,            //Yerel sistem İnternet'e bağlanmak için bir yerel alan ağı kullanır.
            INTERNET_CONNECTION_PROXY = 0x04,          //Yerel sistem Internet'e bağlanmak için bir proxy sunucusu kullanıyor.
            INTERNET_CONNECTION_RAS_INSTALLED = 0x10,  //Yerel sistemde RAS kuruldu
            INTERNET_CONNECTION_OFFLINE = 0x20,        //Yerel sistem çevrimdışı modda.
            INTERNET_CONNECTION_CONFIGURED = 0x40,     //Yerel sistem, İnternet'le geçerli bir bağlantıya sahiptir, ancak o anda bağlı olabilir veya olmayabilir.
            INTERNET_CONNECTION_MODEM_BUSY = 0x08      //Artık kullanılmıyor.
        }
    }
}
Bu kodları kullanarak internet bağlantısının olup olmadığını görebiliyoruz.Diğer bir seçenek ise ping göndererek internet var mı yokmu öğrenebiliriz. Örnek olarak; tcp'yi kullanarak "www.google.com.tr" ye ping gönderebiliriz.Eğer gelen cevap olumlu(true) ise internet olduğunu, eğer cevap olumsuzsa(false) internetin olmadığını öğrenebiliriz.
Rica : Bloğumun üst sıralara çıkmasını istiyorsanız, bu makaleyi yada bloğu sosyal medyada paylaşır mısınız? :)
  • 0 Blogger
  • Google+
  • Facebook

Henüz Yorum Yok

Yorum Gönder

Yayın Üstü Sponsor Reklam

Yayın Ortası Sponsor Reklam

Yayın Ortası Sponsor Reklam 2

Yayın Altı Sponsor Reklam


Bu Makaleyi Beğendinizmi ?