Wie kann am besten festgestellt werden, ob eine Netzwerkverbindung verfügbar ist?
c#
networking
Brad
quelle
quelle
Antworten:
Sie können in .NET 2.0 nach einer Netzwerkverbindung suchen, indem Sie
GetIsNetworkAvailable()
:Verwenden Sie die Ereignisse aus der NetworkChange- Klasse, um Änderungen der IP-Adresse oder Änderungen der Netzwerkverfügbarkeit zu überwachen :
quelle
NetworkInterface.GetIsNetworkAvailable()
war in meiner Anwendung (.NET 4.5, Windows 10) sehr unzuverlässig, insbesondere wenn sie in einer virtuellen Maschine ausgeführt wurde. Der Umgang mit den Ereignissen vonNetworkAvailabilityChanged
war zuverlässig.Die markierte Antwort ist 100% in Ordnung. In bestimmten Fällen wird die Standardmethode jedoch von virtuellen Karten (virtuelle Box, ...) getäuscht. Es ist auch oft wünschenswert, einige Netzwerkschnittstellen aufgrund ihrer Geschwindigkeit (serielle Schnittstellen, Modems, ...) zu verwerfen.
Hier ist ein Code, der nach diesen Fällen sucht:
quelle
Microsoft Windows Vista und 7 verwenden die NCSI-Technik (Network Connectivity Status Indicator):
quelle
Rufen Sie diese Methode auf, um die Netzwerkverbindung zu überprüfen.
Fügen Sie dies unter die Codezeile ein.
quelle