C# 获取局域网电脑信息程序示例
以下是一个使用 C# 语言写的获取局域网电脑信息的程序示例:
using System;
using System.Net;
using System.Net.NetworkInformation;
namespace LANInfo
{
class Program
{
static void Main(string[] args)
{
// 获取本机IP地址
string hostName = Dns.GetHostName();
IPAddress[] addresses = Dns.GetHostAddresses(hostName);
Console.WriteLine('本机IP地址:');
foreach (IPAddress address in addresses)
{
if (address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
Console.WriteLine(address.ToString());
}
}
// 获取局域网中的计算机信息
Console.WriteLine('局域网中的计算机信息:');
Ping ping = new Ping();
for (int i = 1; i <= 255; i++)
{
string ip = '192.168.1.' + i.ToString();
PingReply reply = ping.Send(ip);
if (reply.Status == IPStatus.Success)
{
try
{
IPHostEntry host = Dns.GetHostEntry(ip);
Console.WriteLine(host.HostName);
}
catch
{
Console.WriteLine(ip);
}
}
}
Console.ReadLine();
}
}
}
该程序首先获取本机的 IP 地址,在控制台中输出。然后通过循环 ping 局域网中的所有 IP 地址,如果能够 ping 通,则获取该 IP 地址对应的计算机名,并在控制台中输出。如果获取不到计算机名,则直接输出 IP 地址。注意:在局域网中,计算机名和 IP 地址不一定一一对应,可能存在多个计算机名对应同一个 IP 地址的情况。
原文地址: http://www.cveoy.top/t/topic/nIK2 著作权归作者所有。请勿转载和采集!