C#如何在win7或者win8中获取本地IPv4地址
前一段时间有写过一篇《C#在xp,win7,win8下获取本地IP的区别》小博文,后来发现上面的方法对于win8系统在断网情况下是错误的,会提示访问越界。现在贴出最新代码,这段代码是在xp,win7以及win8都是适用的。众所周知,win7和win8都支持了IPv6,所以导致我们用以前的办法会行不通。
static void Main(string[] args)
{
string HostName = Dns.GetHostName();
IPHostEntry IpEntry = Dns.GetHostEntry(HostName);
IPAddress ip = null;
for (int i = 0; i < IpEntry.AddressList.Length; i++)
{
if (IpEntry.AddressList.AddressFamily.ToString() == "InterNetwork")
{
ip = IpEntry.AddressList;
break;
}
}
Console.WriteLine(ip);
}
上面代码可以保证获取IPv4地址
页:
[1]