Sdílet prostřednictvím


NetworkChange Třída

Definice

Umožňuje aplikacím přijímat oznámení, když se změní IP adresa síťového rozhraní, označovaná také jako síťová karta nebo adaptér.

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
Dědičnost
NetworkChange

Příklady

Následující příklad kódu naslouchá změnám adres a zobrazuje stav síťových rozhraní při výskytu NetworkAddressChanged události.

#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

Poznámky

Třída NetworkChange poskytuje oznámení o změně adresy vyvoláním NetworkAddressChanged událostí. Adresa rozhraní se může změnit z mnoha důvodů, například z odpojeného síťového kabelu, z dosahu bezdrátové místní sítě nebo z důvodu selhání hardwaru.

Pokud chcete dostávat oznámení, musíte identifikovat obslužné rutiny událostí vaší aplikace, což je jedna nebo více metod, které provádějí úlohy specifické pro vaši aplikaci při každém vyvolání události. Pokud chcete, NetworkChange aby objekt volal metody zpracování událostí, když NetworkAddressChanged dojde k události, musíte tyto metody přidružit k delegátu NetworkAddressChangedEventHandler a přidat tohoto delegáta k události.

Konstruktory

NetworkChange()
Zastaralé.

Inicializuje novou instanci NetworkChange třídy.

Metody

RegisterNetworkChange(NetworkChange)
Zastaralé.

Zaregistruje instanci změny sítě pro příjem událostí změn sítě.

Událost

NetworkAddressChanged

Nastane při změně IP adresy síťového rozhraní.

NetworkAvailabilityChanged

Nastane, když se změní dostupnost sítě.

Platí pro