htbzwd 发表于 2015-5-16 08:28:51

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]
查看完整版本: C#如何在win7或者win8中获取本地IPv4地址