获取可用域列表(NT4 和 Active Directory)

Posted

技术标签:

【中文标题】获取可用域列表(NT4 和 Active Directory)【英文标题】:Get a list of available domains (NT4 and Active Directory) 【发布时间】:2010-09-06 12:59:19 【问题描述】:

有谁知道(在 c# 中)获取可用 NT4 域的方法(有点像 WinXP 登录框下拉菜单)?

我知道这对于使用 DirectoryServices 命名空间的 Active Directory 来说相当容易,但是对于旧的 NT4 域,我找不到任何东西。如果可能的话,我宁愿不使用 API 调用(不过这可能会要求很多)。

另外,为了加分(!),我们终于在今年秋天晚些时候切换到 Active Directory,那么当我们迁移时,我将如何构建我的域列表自动从 NT4 切换到 AD 的方式(所以我不'不需要重新编译和重新发布)

【问题讨论】:

【参考方案1】:

很遗憾,我认为您唯一的选择是使用 ADSI API。您可以通过更改代码中的提供程序在 NT4 和 Active Directory 之间切换。 NT4 使用 WinNT 提供程序,而 Active Directory 使用 LDAP 提供程序。

如果您查询所使用的任何提供程序的 RootDSE 节点,则应返回您可以绑定的命名上下文,包括域。 RootDSE 是 LDAP 模式特定的标识符。对于 WinNT,您可以将根对象查询为“WinNT:”以获取可用域。

ADSI 可通过 VB 脚本 BTW 获得。

【讨论】:

以上是关于获取可用域列表(NT4 和 Active Directory)的主要内容,如果未能解决你的问题,请参考以下文章

win10系统用快捷键Ctrl+Win+F查找 计算机出现“active directory域服务当前不可用”错误怎么办?

学习总结-Active Directory 域服务管理05-辅助域服务器

powershell Active Directory获取当前的域功能

net ads join 和net rpc join命令的区别

如何提升 Active Directory 的森林的功能级别?

Windows Server 2012中安装Active Directory域服务