Heim >Backend-Entwicklung >C++ >Wie kann ich die MAC-Adresse einer Maschine in C# zuverlässig ermitteln?

Wie kann ich die MAC-Adresse einer Maschine in C# zuverlässig ermitteln?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-17 01:07:08570Durchsuche

How Can I Reliably Get a Machine's MAC Address in C#?

Präzise Ermittlung der MAC-Adresse einer Maschine in C#

Viele Anwendungen erfordern das Abrufen der MAC-Adresse eines Computers über verschiedene Betriebssysteme hinweg. Dies kann aufgrund von Unterschieden in der Betriebssystemstruktur und den Spracheinstellungen schwierig sein. Einfache Methoden, wie das Parsen der Ausgabe von „ipconfig /all“, sind aufgrund inkonsistenter Formatierung unzuverlässig.

Für eine robuste Lösung sollten Sie die folgenden Ansätze in Betracht ziehen:

(1) Verbesserte Methode

Dieser Code verwendet LINQ für eine effiziente MAC-Adressenextraktion:

<code class="language-csharp">var macAddr = (
    from nic in NetworkInterface.GetAllNetworkInterfaces()
    where nic.OperationalStatus == OperationalStatus.Up
    select nic.GetPhysicalAddress().ToString()
).FirstOrDefault();</code>

(2) Erweiterte LINQ-Abfrage

Dieser verfeinerte LINQ-Ausdruck bietet eine verbesserte Genauigkeit:

<code class="language-csharp">string firstMacAddress = NetworkInterface
    .GetAllNetworkInterfaces()
    .Where(nic => nic.OperationalStatus == OperationalStatus.Up && nic.NetworkInterfaceType != NetworkInterfaceType.Loopback)
    .Select(nic => nic.GetPhysicalAddress().ToString())
    .FirstOrDefault();</code>

Diese Methoden sind für plattformübergreifende Kompatibilität und konsistenten, zuverlässigen MAC-Adressabruf konzipiert.

Das obige ist der detaillierte Inhalt vonWie kann ich die MAC-Adresse einer Maschine in C# zuverlässig ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn