C# 如何获取本机的局域网IP

leiting560612 2009-10-14 03:18:06
C# 如何获取本机的局域网IP?
...全文
180 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
asd28269 2012-09-28
  • 打赏
  • 举报
回复
不是很好
江南小鱼 2009-10-14
  • 打赏
  • 举报
回复
class Program

{

static void Main(string[] args)

{

Console.WriteLine(GetLocalHostIPAddress());

Console.ReadLine();

}

static string GetLocalHostIPAddress()

{

IPAddress[] ipLocal;//定义一个IPAddress类型的数组,用来存储本地IP

byte[] bArrIPAddr;//定义一个byte类型的数组,用来把存储字节型IP地址形式

int intI;

string strIPAddr = "";

ipLocal = Dns.GetHostAddresses(Dns.GetHostName());//通过本机名获取本机IP地址

if (ipLocal.Length == 0)

{

return strIPAddr;

}

bArrIPAddr = ipLocal[0].GetAddressBytes();

/*

* byte[]IPAddress.GetAddressBytes()

* Provides a copy of the System.Net.IPAddress as an array of bytes.

*/

intI = 0;

while (intI < bArrIPAddr.Length)

{

if (intI == 0)

{

strIPAddr = bArrIPAddr[intI].ToString();

}

else

{

strIPAddr += "." + bArrIPAddr[intI].ToString();

}

intI += 1;

}

return strIPAddr;

}

}
风之影子 2009-10-14
  • 打赏
  • 举报
回复
using System.Management; //需要在解决方案中引用System.Management.DLL文件
风之影子 2009-10-14
  • 打赏
  • 举报
回复
        /// <summary>
/// 获取当前网卡IP地址
/// </summary>
/// <returns></returns>
public static string GetNetCardIP()
{
try
{
string stringIP = "";
ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC = MC.GetInstances();
foreach (ManagementObject MO in MOC)
{
if ((bool)MO["IPEnabled"] == true)
{
string[] IPAddresses = (string[])MO["IPAddress"];
if (IPAddresses.Length > 0)
{
stringIP = IPAddresses[0].ToString();
}
}
}
return stringIP;
}
catch
{
return "";
}
}

110,545

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧