Поделиться через


PhysicalAddress Класс

Определение

Предоставляет МАС-адрес сетевого интерфейса (адаптера).

public ref class PhysicalAddress
public class PhysicalAddress
type PhysicalAddress = class
Public Class PhysicalAddress
Наследование
PhysicalAddress

Примеры

В следующем примере кода отображаются физические адреса всех интерфейсов на локальном компьютере.

void ShowNetworkInterfaces()
{
   IPGlobalProperties^ computerProperties = IPGlobalProperties::GetIPGlobalProperties();
   array<NetworkInterface^>^nics = NetworkInterface::GetAllNetworkInterfaces();
   Console::WriteLine( L"Interface information for {0}.{1}     ", computerProperties->HostName, computerProperties->DomainName );
   if ( nics == nullptr || nics->Length < 1 )
   {
      Console::WriteLine( L"  No network interfaces found." );
      return;
   }

   Console::WriteLine( L"  Number of interfaces .................... : {0}", (nics->Length).ToString() );
   IEnumerator^ myEnum1 = nics->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      NetworkInterface^ adapter = safe_cast<NetworkInterface^>(myEnum1->Current);
      IPInterfaceProperties^ properties = adapter->GetIPProperties();
      Console::WriteLine();
      Console::WriteLine( adapter->Description );
      Console::WriteLine( String::Empty->PadLeft( adapter->Description->Length, '=' ) );
      Console::WriteLine( L"  Interface type .......................... : {0}", adapter->NetworkInterfaceType );
      Console::Write( L"  Physical address ........................ : " );
      PhysicalAddress^ address = adapter->GetPhysicalAddress();
      array<Byte>^bytes = address->GetAddressBytes();
      for ( int i = 0; i < bytes->Length; i++ )
      {
         
         // Display the physical address in hexadecimal.
         Console::Write( L"{0}", bytes[ i ].ToString( L"X2" ) );
         
         // Insert a hyphen after each byte, unless we are at the end of the 
         // address.
         if ( i != bytes->Length - 1 )
         {
            Console::Write( L"-" );
         }

      }
      Console::WriteLine();
   }
}
public static void ShowNetworkInterfaces()
{
    IPGlobalProperties computerProperties = IPGlobalProperties.GetIPGlobalProperties();
    NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
    Console.WriteLine("Interface information for {0}.{1}     ",
            computerProperties.HostName, computerProperties.DomainName);
    if (nics == null || nics.Length < 1)
    {
        Console.WriteLine("  No network interfaces found.");
        return;
    }

    Console.WriteLine("  Number of interfaces .................... : {0}", nics.Length);
    foreach (NetworkInterface adapter in nics)
    {
        IPInterfaceProperties properties = adapter.GetIPProperties(); //  .GetIPInterfaceProperties();
        Console.WriteLine();
        Console.WriteLine(adapter.Description);
        Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length, '='));
        Console.WriteLine("  Interface type .......................... : {0}", adapter.NetworkInterfaceType);
        Console.Write("  Physical address ........................ : ");
        PhysicalAddress address = adapter.GetPhysicalAddress();
        byte[] bytes = address.GetAddressBytes();
        for (int i = 0; i < bytes.Length; i++)
        {
            // Display the physical address in hexadecimal.
            Console.Write("{0}", bytes[i].ToString("X2"));
            // Insert a hyphen after each byte, unless we're at the end of the address.
            if (i != bytes.Length - 1)
            {
                Console.Write("-");
            }
        }
        Console.WriteLine();
    }
}

Комментарии

MAC-адрес или физический адрес — это аппаратный адрес, который однозначно идентифицирует каждый узел, например компьютер или принтер, в сети.

Экземпляры этого класса возвращаются методом NetworkInterface.GetPhysicalAddress .

Конструкторы

PhysicalAddress(Byte[])

Инициализирует новый экземпляр класса PhysicalAddress.

Поля

None

Возвращает новый экземпляр PhysicalAddress с адресом нулевой длины. Это поле доступно только для чтения.

Методы

Equals(Object)

Сравниваются два экземпляра PhysicalAddress.

GetAddressBytes()

Возвращает адрес текущего экземпляра.

GetHashCode()

Возвращает значение хэша физического адреса.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
Parse(ReadOnlySpan<Char>)

Анализирует заданный диапазон и сохраняет его содержимое в виде байтов адреса экземпляра PhysicalAddress, возвращаемого этим методом.

Parse(String)

Анализирует заданную строку String и сохраняет ее содержимое в виде байтов адреса экземпляра PhysicalAddress, возвращаемого этим методом.

ToString()

Возвращает представление адреса экземпляра в виде строки String.

TryParse(ReadOnlySpan<Char>, PhysicalAddress)

Пытается преобразовать представление диапазона аппаратного адреса в экземпляр PhysicalAddress. Возвращает значение, указывающее, успешно ли выполнено преобразование.

TryParse(String, PhysicalAddress)

Пытается преобразовать представление строки аппаратного адреса в экземпляр PhysicalAddress. Возвращает значение, указывающее, успешно ли выполнено преобразование.

Применяется к