這個要引入命名空間
using System.Net;
因爲AddressFamily枚舉類型在這個命名空間中。
public static string GetLocalIP()
{
try
{
string HostName = Dns.GetHostName(); //得到主機名
IPHostEntry IpEntry = Dns.GetHostEntry(HostName);
for (int i = 0; i < IpEntry.AddressList.Length; i++)
{
//從IP地址列表中篩選出IPv4類型的IP地址
//AddressFamily.InterNetwork表示此IP爲IPv4,
//AddressFamily.InterNetworkV6表示此地址爲IPv6類型
if (IpEntry.AddressList[i].AddressFamily == AddressFamily.InterNetwork)
{
return IpEntry.AddressList[i].ToString();
}
}
return "";
}
catch (Exception ex)
{
MessageBox.Show("獲取本機IP出錯:" + ex.Message);
return "";
}
}