用 C# 穩健地取得電腦的 MAC 位址
由於作業系統和語言的不一致,在 C# 中可靠地取得機器的 MAC 位址可能會很棘手。 雖然 ipconfig /all
看起來像是解決方案,但它的輸出格式因係統而異,使其不可靠。
可靠的方法
更強大的方法利用 C# 中的 NetworkInterface
類別。這提供了一種一致的方式來檢索 MAC 位址,無論作業系統或語言為何。 方法如下:
<code class="language-csharp">var macAddr = ( from nic in NetworkInterface.GetAllNetworkInterfaces() where nic.OperationalStatus == OperationalStatus.Up select nic.GetPhysicalAddress().ToString() ).FirstOrDefault();</code>
此程式碼檢索所有網路接口,過濾活動接口,並選擇它們的實體位址(MAC 位址)。 FirstOrDefault()
傳回找到的第一個 MAC 位址。
替代實作(更明確)
稍微更詳細的方法提供相同的結果:
<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>
這明確排除了非活動接口和環回接口,確保僅考慮有效的 MAC 位址。
以上是如何在 C# 中可靠地檢索電腦的 MAC 位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!