C#获取本地IP地址兼容win7和xp
2016-03-25 10:16
435 查看
获取本机ip本来是很容易的,IPAddress _ip = Dns.GetHostAddresses(Dns.GetHostName())[0];就行了
但是在vista win7等系统里面这样获得的是ipv6地址,
private string GetLocalIp()
{
string localIp;
IPHostEntry host;
host = Dns.GetHostEntry(Dns.GetHostName());
if (host.AddressList.Length > 1)
{
//win7 ip 这里或许要用length
localIp = host.AddressList[1].ToString();
}
else
{
//xp
localIp = host.AddressList[0].ToString();
}
return localIp;
}
但是在vista win7等系统里面这样获得的是ipv6地址,
private string GetLocalIp()
{
string localIp;
IPHostEntry host;
host = Dns.GetHostEntry(Dns.GetHostName());
if (host.AddressList.Length > 1)
{
//win7 ip 这里或许要用length
localIp = host.AddressList[1].ToString();
}
else
{
//xp
localIp = host.AddressList[0].ToString();
}
return localIp;
}
相关文章推荐
- C# 类构造函数赋值里属性与字段赋值注意项
- C# 对多个文件进行zip压缩
- C#中的静态成员、静态方法、静态类介绍
- 在C#中如何使用正式表达式获取匹配所需数据
- 从0自学C#10--在线绘制类图
- C#Winform子报表功能
- C#的互操作性:缓冲区、结构、指针
- 【C#进阶系列】16 数组
- 【C#进阶系列】15 数组
- C#打印GroupBox控件区域
- c# socket 异步
- C#关于取DataTable中中间数据的方法
- C#——判断成绩是否通过
- C#——判断一个数是奇偶性
- C#扫盲之:静态成员、静态方法、静态类、实例成员及区别
- 详解C#中的反射
- C# 的时间戳转换
- C# String类
- C#-Math基本方法
- 多线程IP获取工具(C#)