Feedback

C# - Prüfen, ob Internetverbindung besteht (kurz)

Veröffentlicht von am 19.01.2011
(3 Bewertungen)
Mit diesem Snippet kann man ganz einfach prüfen, ob eine Internetverbindung besteht.

Viel Spaß
bool checkconnection = System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable();
Abgelegt unter internetverbindung, internet, netzwerk, ping.

6 Kommentare zum Snippet

Fawk_18 schrieb am 20.01.2011:
Leider prüft dieses Snippet nur ob das Standart NetzwerkInterface aktiv oder vorhanden ist. Wenn also keine Internetverbindung vorhanden ist und dennoch der LAN-Adapter aktiv wird dort "true" rauskommen.
Jan Welker schrieb am 20.01.2011:
Stimmt
Christian Köwing schrieb am 22.01.2011:
Folgendes würde ich ergänzend für Internetverbindungs-Prüfung empfehlen:

bool checkInternet = new Ping().Send("http://www.google.de", 500).Status == IPStatus.Success;


Namespace : System.Net.NetworkInformation
Jedi66 schrieb am 01.04.2011:
bool checkInternet = new Ping().Send("http://www.google.de", 500).Status == IPStatus.Success;


Muss man da nicht die IP direkt angeben? wegen der DNS Auflösung.
Zumindest funktioniert es bei mir nur wenn man eine IP Adresse angibt.
Man kann natürlich dann nach Variationen das ganze ausbauen.

bool checkInternet = new Ping().Send("74.125.39.147", 500).Status == IPStatus.Success;

if (checkInternet)
{
label8.Text = "Du bist mit den Internet Verbunden";
label8.BackColor = Color.Green;
}
else
{
label8.Text = "Du bist nicht mit den Internet verbunden";
label8.BackColor = Color.Red;
}


Scavanger schrieb am 02.04.2011:
Nein, bei Ping kann natürlich auch der Domainname angegeben werden, allerdings ist das o.g. Beispiele leider falsch, da PING ICMP-Pakete verschickt und auf ICMP-Ebene gibt es keine Protokolle wie http, ftp, usw.

Lange Rede kurzer Sinn: Das Scheme bei der URL weglassen:

bool checkInternet = new Ping().Send("google.de", 500).Status == IPStatus.Success;
Jedi66 schrieb am 02.04.2011:
@Scavanger

Danke für die aufklärung.
 

Logge dich ein, um hier zu kommentieren!