Aracılığıyla paylaş


NetworkChange Sınıf

Tanım

Ağ kartı veya bağdaştırıcı olarak da adlandırılan bir ağ arabiriminin İnternet Protokolü (IP) adresi değiştiğinde uygulamaların bildirim almasına izin verir.

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
Devralma
NetworkChange

Örnekler

Aşağıdaki kod örneği adres değişikliklerini dinler ve bir NetworkAddressChanged olay gerçekleştiğinde ağ arabirimlerinin durumunu görüntüler.

#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

Açıklamalar

sınıfı, NetworkChange olayları yükselterek NetworkAddressChanged adres değişikliği bildirimi sağlar. Arabirim adresi, bağlantısı kesilmiş bir ağ kablosu, kablosuz Yerel Ağ aralığının dışına çıkma veya donanım hatası gibi birçok nedenden dolayı değişebilir.

Bildirim almak için uygulamanızın olay işleyicilerini tanımlamanız gerekir. Bunlar, olay her tetiklendiğinde uygulamaya özgü görevleri gerçekleştiren bir veya daha fazla yöntemdir. Bir NetworkAddressChanged olay oluştuğunda nesnenin NetworkChange olay işleme yöntemlerinizi çağırmasını sağlamak için, yöntemleri bir NetworkAddressChangedEventHandler temsilciyle ilişkilendirmeniz ve bu temsilciyi olaya eklemeniz gerekir.

Oluşturucular

NetworkChange()
Geçersiz.

NetworkChange sınıfının yeni bir örneğini başlatır.

Yöntemler

RegisterNetworkChange(NetworkChange)
Geçersiz.

Ağ değişikliği olaylarını almak için bir ağ değişikliği örneğini kaydeder.

Ekinlikler

NetworkAddressChanged

Bir ağ arabiriminin IP adresi değiştiğinde gerçekleşir.

NetworkAvailabilityChanged

Ağın kullanılabilirliği değiştiğinde gerçekleşir.

Şunlara uygulanır