DirectoryServicesCOMException并不总是抛出 - 有时是COMException

时间:2013-07-20 05:17:19

标签: c# active-directory directoryservices directoryentry

我正在使用.NET 4.0并调用DirectoryEntry.NativeObject来验证用户对AD的凭据。

如果在AD中为用户设置了“用户必须在下次登录时更改密码”标志,则DirectoryEntry.NativeObject调用将抛出DirectoryServicesCOMException。然后,我可以使用DirectoryServicesCOMException中的信息来确定是否因为设置了更改密码标志而导致失败。

这适用于某些Windows 2008 AD服务器,但在其他Windows 2008 AD服务器上,而不是抛出DirectoryServicesCOMException,抛出COMException,我无法确定失败的原因,因为我没有相同的信息由DirectoryServicesCOMException提供。

我不确定服务器之间的差异会导致抛出不同的异常。

有没有人知道为什么在某些服务器上抛出COMException而不是DirectoryServicesCOMException?

如果抛出COMException,是否有人知道如何获取有关错误的其他信息? HRESULT还不够。

感谢。

1 个答案:

答案 0 :(得分:-1)

尝试使用不同的DirectoryEntry.AuthenticationType

如果它对你有所帮助,请告诉我。

RGDS。