【发布时间】:2013-07-20 05:17:18
【问题描述】:
我正在使用 .NET 4.0 并调用 DirectoryEntry.NativeObject 来针对 AD 验证用户的凭据。
如果在 AD 中为用户设置了“用户下次登录时必须更改密码”标志,DirectoryEntry.NativeObject 调用将引发 DirectoryServicesCOMException。然后,我可以使用 DirectoryServicesCOMException 中的信息来确定失败是否是因为设置了更改密码标志。
这适用于某些 Windows 2008 AD 服务器,但适用于其他 Windows 2008 AD 服务器,而不是抛出 DirectoryServicesCOMException,而是抛出 COMException,我无法确定失败的原因,因为我没有相同的信息由 DirectoryServicesCOMException 提供。
我不确定服务器之间的哪些差异会导致抛出不同的异常。
有谁知道为什么在某些服务器上抛出 COMException 而不是 DirectoryServicesCOMException?
如果抛出 COMException,有谁知道如何获取有关错误的其他信息? HRESULT 是不够的。
谢谢。
【问题讨论】:
标签: c# active-directory directoryservices directoryentry