Freigeben über


NetworkChange Klasse

Definition

Ermöglicht die Benachrichtigung von Anwendungen, wenn sich die IP-Adresse einer Netzwerkschnittstelle (auch Netzwerkkarte oder -adapter genannt) ändert.

public ref class NetworkChange abstract sealed
public ref class NetworkChange
public ref class NetworkChange sealed
public static class NetworkChange
public class NetworkChange
public sealed class NetworkChange
type NetworkChange = class
Public Class NetworkChange
Public NotInheritable Class NetworkChange
Vererbung
NetworkChange

Beispiele

Das folgende Codebeispiel lauscht auf Adressänderungen und zeigt die status von Netzwerkschnittstellen an, wenn ein NetworkAddressChanged Ereignis auftritt.

#using <System.dll>

using namespace System;
using namespace System::Net;
using namespace System::Net::NetworkInformation;
void AddressChangedCallback( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   array<NetworkInterface^>^adapters = NetworkInterface::GetAllNetworkInterfaces();
   System::Collections::IEnumerator^ myEnum = adapters->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      NetworkInterface^ n = safe_cast<NetworkInterface^>(myEnum->Current);
      Console::WriteLine( "   {0} is {1}", n->Name, n->OperationalStatus );
   }
}

int main()
{
   NetworkChange::NetworkAddressChanged += gcnew NetworkAddressChangedEventHandler( AddressChangedCallback );
   Console::WriteLine( "Listening for address changes. Press any key to exit." );
   Console::ReadLine();
}
using System;
using System.Net;
using System.Net.NetworkInformation;

namespace Examples.Net.AddressChanges
{
    public class NetworkingExample
    {
        public static void Main()
        {
            NetworkChange.NetworkAddressChanged += new
            NetworkAddressChangedEventHandler(AddressChangedCallback);
            Console.WriteLine("Listening for address changes. Press any key to exit.");
            Console.ReadLine();
        }
        static void AddressChangedCallback(object sender, EventArgs e)
        {

            NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
            foreach(NetworkInterface n in adapters)
            {
                Console.WriteLine("   {0} is {1}", n.Name, n.OperationalStatus);
            }
        }
    }
}
Imports System.Net
Imports System.Net.NetworkInformation

Public Class NetworkingExample
    Public Shared Sub Main()
        AddHandler NetworkChange.NetworkAddressChanged, AddressOf AddressChangedCallback
        Console.WriteLine("Listening for address changes. Press any key to exit.")
        Console.ReadLine()
    End Sub
    Private Shared Sub AddressChangedCallback(ByVal sender As Object, ByVal e As EventArgs)

        Dim adapters As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
        Dim n As NetworkInterface
        For Each n In adapters
            Console.WriteLine("   {0} is {1}", n.Name, n.OperationalStatus)
        Next n
    End Sub
End Class

Hinweise

Die NetworkChange -Klasse stellt Benachrichtigungen zu Adressänderungen bereit, indem Ereignisse ausgelöst werden NetworkAddressChanged . Eine Schnittstellenadresse kann sich aus vielen Gründen ändern, z. B. durch ein getrenntes Netzwerkkabel, das Verschieben aus dem Bereich eines drahtlosen lokalen Netzwerks oder ein Hardwarefehler.

Um Benachrichtigungen zu erhalten, müssen Sie die Ereignishandler Ihrer Anwendung identifizieren. Dabei handelt es sich um eine oder mehrere Methoden, die ihre anwendungsspezifischen Aufgaben jedes Mal ausführen, wenn das Ereignis ausgelöst wird. Damit ein NetworkChange Objekt ihre Ereignisbehandlungsmethoden aufruft, wenn ein NetworkAddressChanged Ereignis auftritt, müssen Sie die Methoden einem NetworkAddressChangedEventHandler Delegaten zuordnen und diesen Delegat dem Ereignis hinzufügen.

Konstruktoren

NetworkChange()
Veraltet.

Initialisiert eine neue Instanz der NetworkChange-Klasse.

Methoden

RegisterNetworkChange(NetworkChange)
Veraltet.

Registriert eine Netzwerkänderungsinstanz, damit Netzwerkänderungsereignisse empfangen werden können.

Ereignisse

NetworkAddressChanged

Tritt ein, wenn sich die IP-Adresse einer Netzwerkschnittstelle ändert.

NetworkAvailabilityChanged

Tritt ein, wenn sich die Verfügbarkeit des Netzwerks ändert.

Gilt für: