您如何确定您的 AD/AM 实例是不是已通过 C# 启动并运行?
Posted
技术标签:
【中文标题】您如何确定您的 AD/AM 实例是不是已通过 C# 启动并运行?【英文标题】:How do you find out if your AD/AM instance is up and running via C#?您如何确定您的 AD/AM 实例是否已通过 C# 启动并运行? 【发布时间】:2008-12-06 23:09:37 【问题描述】:我看到了一个链接来了解 AD 是否正在运行,但我不太确定这是否同样适用于 AD/AM。 一个警告是,假设我有权限,我应该能够检查任何 AD/AM 实例(任何域)。
【问题讨论】:
【参考方案1】:同样的方法适用于 AD 或 AD LDS(轻量级目录服务,ADAM 的新名称)。 .NET 示例http://msdn.microsoft.com/en-us/library/x8wxt72e(VS.71).aspx
【讨论】:
【参考方案2】:针对 AD/AM 和 AD 执行 LDAP 查询在功能上非常接近。您只需要在绑定字符串和端口中包含 DNS 前缀(如果它不是默认的 389):
LDAP://ADAMServer:50000/DC=domain,DC=local
一个主要的痛点是 AD/AM 中默认没有 RootDSE。您可以手动添加它,但默认情况下您不能使用那些使用 LDAP://Server/RootDSE 语法的便捷搜索过滤器。
ADAM 实例由端口号分隔,因此您需要根据所需实例指定端口。您可以在服务器的 Windows 2008 注册表中找到它:
HKLM\SYSTEM\CurrentControlSet\Services\ADAM_InstanceName\Parameters
或者您可以执行命令行查询:
c:\windows\adam\dsdbutil.exe "list instances"
【讨论】:
以上是关于您如何确定您的 AD/AM 实例是不是已通过 C# 启动并运行?的主要内容,如果未能解决你的问题,请参考以下文章
您如何确定 sql server 实例是不是是“始终在线”副本?
如何创建IOptions 来自T的自定义实例(不是通过DI)
您能否以编程方式检查以确定您的 android 设备是不是处于深度睡眠模式?