Delphi - 使用单元 'Web.Win.ADsTypes' 时如何获取最后一条错误消息

Delphi - How to get last error message when working with unit 'Web.Win.ADsTypes'

在我的程序中,我使用 ADSI 对象进行 LDAP 查询。 我正在使用位于 Web.Win.ADsTypes.

的 ADsGetObject 函数

如果函数失败或者我得到了错误的结果,我想抛出一个异常。 我使用 Windows 单元编写了一些类似的代码,我可以在其中使用像这样的 GetLastError 函数

raise Exception.Create('Error ' + SysErrorMessage(GetLastError()));

它给了我发生的最后一个错误。

我想知道是否有类似的功能可以用来查看使用 'Web.Win.ADsTypes' 时发生的最后一个错误。

如果我对 ADsGetObject 的文档理解正确,您必须将 ADsGetObject 返回的值传递给 SysErrorMessage()。 我认为您的代码应如下所示:

rc := ADsGetObject(...);
if S_OK <> rc then raise Exception.Create('Error ' + SysErrorMessage(rc));