C#取得デバイスのIPとMacクラス
1254 ワード
/// <summary>
/// Ip Mac
/// </summary>
public class Mac
{
[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);
// IP
public string getLocalIP()
{
string strHostName = Dns.GetHostName(); //
IPHostEntry ipEntry = Dns.GetHostEntry(strHostName); // IP
string strAddr = ipEntry.AddressList[0].ToString();
return (strAddr);
}
// MAC
public string getLocalMac()
{
string mac = null;
ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
ManagementObjectCollection queryCollection = query.Get();
foreach (ManagementObject mo in queryCollection)
{
if (mo["IPEnabled"].ToString() == "True")
mac = mo["MacAddress"].ToString();
}
return (mac);
}
}