首頁 > 後端開發 > C++ > 如何用C#跨平台可靠地取得機器的MAC位址?

如何用C#跨平台可靠地取得機器的MAC位址?

Susan Sarandon
發布: 2025-01-17 01:21:10
原創
609 人瀏覽過

How Can I Reliably Obtain a Machine's MAC Address in C# Across Different Platforms?

C# 中檢索 MAC 位址的跨平台解決方案

由於命令列輸出和語言設定存在差異,在不同作業系統上一致地取得機器的 MAC 位址是很棘手的。 本文提出了一種可靠的、獨立於平台的方法。

可靠的方法:使用 NetworkInterface

最可靠的方法使用 NetworkInterface 類別。無論系統語言如何,這在 Windows XP、Vista、7 及更高版本、32 位元和 64 位元環境中都一致運作。

程式碼範例

這裡有兩種實作方法:

方法一:

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

方法2(更簡潔):

<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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板