通过计算机名称C#AD获取DNS名称

问题描述 投票:0回答:1

我试图找出如何从我的C#Windows窗体应用程序中的Active Directory获取DNS名称字段。我有一个计算机名称,我想从Active目录中获取此计算机的DNS名称。有什么建议?

c# active-directory
1个回答
1
投票

DNS名称存储在计算机的AD对象上名为dNSHostName的属性中,因此您需要在AD中查找该对象并读取该属性。

这是一个示例,其中变量computerName具有计算机名称。

var search = new DirectorySearcher {
    Filter = $"(&(objectCategory=computer)(sAMAccountName={computerName}$))"
};
search.PropertiesToLoad.Add("dNSHostName");
var result = search.FindOne();

var dnsName = result.Properties["dNSHostName"][0].ToString();

我不是在SearchRoot中设置DirectorySearcher,所以这只会搜索您登录的当前域名。

© www.soinside.com 2019 - 2024. All rights reserved.