這篇文章主要介紹了如何獲取pc電腦和平板物理地址,需要的朋友可以參考下
獲取pc物理地址 命名空間:using System.Management; 代碼如下: /// <summary> /// 獲取mac物理地址 /// </summary> /// <returns></returns> public string GetMac() { try { ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration"); ManagementObjectCollection queryCollection = query.Get(); foreach (ManagementObject mo in queryCollection) { if (mo["IPEnabled"].ToString() == "True") return mo["MacAddress"].ToString(); } return ""; } catch { return ""; } } 獲取平板mac地址: 命名空間: using System.Net; using System.Runtime.InteropServices; 添加變量: 代碼如下: protected static string strJavaScript = string.Empty; [DllImport("Iphlpapi.dll")] private static extern int SendARP(Int32 dest, Int32 host, ref Int64 mac, ref Int32 length); [DllImport("Ws2_32.dll")] private static extern Int32 inet_addr(string ip); 代碼如下: private void SetMac() { try { string treatment_id = Hid_treatment_id.Value; string mac = string.Empty; string ip = Request.UserHostAddress.ToString().Trim(); try { mac = getMac(); } catch { lbl.InnerText = "w33w"; } //mac = "00:01:36:D8:9C:C4"; // lbl.InnerText = mac + "," + ip; if (mac != "您沒有聯網") { int iRetn = commonws.GetInt("CRRT/PAD-登錄", "指定某治療病人的平板MAC地址", new string[] { mac, treatment_id }); } } catch { lbl.InnerText = "ww"; } } private string getMac() { string mac = ""; string strClientIP = Request.UserHostAddress.ToString().Trim(); Int32 ldest = inet_addr(strClientIP); //目的地的ip Int32 lhost = inet_addr(""); //本地服務器的ip Int64 macinfo = new Int64(); Int32 len = 6; int res = SendARP(ldest, 0, ref macinfo, ref len); mac = macinfo.ToString("X"); try { string[] arr_mac = new string[mac.Length / 2]; int k = 0; for (int i = mac.Length; i > 0; i = i - 2) { arr_mac[k] = mac.Substring(i - 2, 2); k++; } mac = ""; foreach (string chars in arr_mac) { mac += chars + ":"; } mac = mac.TrimEnd(':'); } catch { } return mac; }