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!