ldap_search 函数 (winldap.h)

ldap_search函数搜索 LDAP 目录,并为每个匹配条目返回请求的属性集。

语法

WINLDAPAPI ULONG LDAPAPI ldap_search(
  [in] LDAP   *ld,
  [in] PSTR   base,
  [in] ULONG  scope,
  [in] PSTR   filter,
  [in] PZPSTR attrs,
  [in] ULONG  attrsonly
);

参数

[in] ld

会话句柄。

[in] base

指向以 null 结尾的字符串的指针,该字符串包含要开始搜索的条目的可分辨名称。

[in] scope

一种数据类型,指定以下值之一来指示搜索范围。

LDAP_SCOPE_BASE

仅搜索基项。

LDAP_SCOPE_ONELEVEL

搜索基础条目下方第一级的所有条目,不包括基条目。

LDAP_SCOPE_SUBTREE

搜索基项和基下方树中的所有条目。

[in] filter

指向以 null 结尾的字符串的指针,该字符串指定搜索筛选器。 有关详细信息,请参阅 搜索筛选器语法

[in] attrs

以 null 结尾的字符串数组,这些字符串指示要为每个匹配项返回哪些属性。 传递 NULL 以检索可用属性。

[in] attrsonly

如果同时返回属性类型和值,则应为零的布尔值;如果只需要类型,则为非零值。

返回值

如果该函数成功,它将返回搜索操作的消息 ID。

如果函数失败,它将返回 –1 并在 LDAP 数据结构中设置会话错误参数。

注解

ldap_search 函数启动异步搜索操作。

ldap_set_option 函数与 ld 会话句柄结合使用,设置确定如何执行搜索的LDAP_OPT_SIZELIMIT、LDAP_OPT_TIMELIMIT和LDAP_OPT_DEREF选项。 有关详细信息,请参阅 会话选项

作为异步函数, ldap_search 返回操作的消息 ID。 使用消息 ID 调用 ldap_result 以获取操作的结果。 若要在异步搜索操作完成之前取消该操作,请调用 ldap_abandon

若要让函数直接返回结果,请使用同步例程 ldap_search_s。 使用 ldap_search_extldap_search_ext_s 实现对 LDAP 3 服务器和客户端控件的支持。

多线程处理:对 ldap_search 的调用是线程安全的,前提是在函数调用返回 -1 失败代码时使用 LdapGetLastError 检索实际会话错误代码。

注意 连接到 LDAP 2 服务器时,应用程序必须通过调用 ldap_bindldap_simple_bind 例程之一来执行绑定操作,然后再尝试其他操作。
 

要求

要求
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 winldap.h
Library Wldap32.lib
DLL Wldap32.dll

请参阅

函数

LDAP

ldap_abandon

ldap_bind

ldap_result

ldap_search_ext

ldap_search_ext_s

ldap_search_s

ldap_simple_bind