Feedback

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

Veröffentlicht von am 1/19/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 1/20/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 1/20/2011:
Stimmt
Christian Köwing schrieb am 1/22/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 4/1/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 4/2/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 4/2/2011:
@Scavanger

Danke für die aufklärung.
 

Logge dich ein, um hier zu kommentieren!