获取pc电脑和平板物理地址

时间:2022-09-17 20:29:48

获取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;