📅  最后修改于: 2023-12-03 15:40:59.104000             🧑  作者: Mango
在开发C#程序时,有时需要获取当前网络中的所有计算机信息。本篇文章将介绍如何使用C#获取计算机列表。
获取本地计算机名称的方法非常简单,只需要使用System.Environment类中的MachineName属性即可。示例代码如下:
string computerName = Environment.MachineName;
Console.WriteLine(computerName);
以上代码输出结果类似于:DESKTOP-XXXXXXX
获取网络中的计算机列表可以使用System.DirectoryServices类库中的DirectoryEntry和DirectorySearcher类。首先需要创建一个DirectoryEntry对象,用于访问网络目录服务。然后创建一个DirectorySearcher对象,用于搜索特定的目录项。最后,使用FindAll方法获取所有与搜索条件匹配的目录项。
下面是一个示例代码,用于获取网络中所有计算机的名称:
using System.DirectoryServices;
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://");
DirectorySearcher directorySearcher = new DirectorySearcher(directoryEntry);
directorySearcher.Filter = ("(objectClass=computer)");
directorySearcher.PropertiesToLoad.Add("name");
SearchResultCollection result = directorySearcher.FindAll();
foreach (SearchResult searchResult in result)
{
Console.WriteLine(searchResult.Properties["name"][0].ToString());
}
以上代码输出结果将会是当前网络中的所有计算机名称列表。
本篇文章介绍了使用C#获取计算机列表的方法。这对于需要对多个计算机进行管理的系统管理员和开发人员非常有用。以上代码可以在Windows操作系统中运行,并且可以轻松地进行修改,以适应不同的需求。