Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция ldap_search_ext выполняет поиск в каталоге LDAP и возвращает запрошенный набор атрибутов для каждой соответствующей записи.
Синтаксис
WINLDAPAPI ULONG LDAPAPI ldap_search_extA(
[in] LDAP *ld,
[in] const PSTR base,
[in] ULONG scope,
[in] const PSTR filter,
[in] PZPSTR attrs,
[in] ULONG attrsonly,
[in] PLDAPControlA *ServerControls,
[in] PLDAPControlA *ClientControls,
[in] ULONG TimeLimit,
[in] ULONG SizeLimit,
[out] ULONG *MessageNumber
);
Параметры
[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
Логическое значение, которое должно быть равно нулю, если должны быть возвращены как типы атрибутов, так и значения, ненулевое, если должны быть возвращены только типы.
[in] ServerControls
Список серверных элементов управления LDAP.
[in] ClientControls
Список клиентских элементов управления.
[in] TimeLimit
Указывает значение времени ожидания локального поиска в секундах и ограничение времени операции, отправленное на сервер в поисковом запросе.
[in] SizeLimit
Ограничение на количество записей, возвращаемых из поиска. Нулевое значение указывает, что ограничений нет.
[out] MessageNumber
Идентификатор сообщения запроса.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет LDAP_SUCCESS.
Если функция завершается сбоем, она возвращает код ошибки. Дополнительные сведения см. в разделе Возвращаемые значения.
Комментарии
Функция ldap_search_ext инициирует асинхронную операцию поиска. Параметры и эффекты ldap_search_ext включают параметры ldap_search. Расширенная функция включает дополнительные параметры для поддержки клиентских и серверных элементов управления и потокобезопасности, а также для указания размера и времени для каждой операции поиска.
Используйте функцию ldap_set_option с дескриптором сеанса ld , чтобы задать параметр LDAP_OPT_DEREF , определяющий способ выполнения поиска. Дополнительные сведения см. в разделе Параметры сеанса. Два других параметра сеанса, LDAP_OPT_SIZELIMIT и LDAP_OPT_TIMELIMIT, игнорируются в пользу параметров SizeLimit и TimeLimit в этой функции.
Если операция выполнена успешно, ldap_search_ext передает идентификатор сообщения вызывающему объекту в качестве параметра при успешном возвращении операции. Вызовите ldap_result с идентификатором сообщения, чтобы получить результат операции.
Клиентское приложение LDAP, которое должно управлять скоростью, с которой возвращаются результаты, может указать поисковый запрос, чтобы предоставить элемент управления страничными результатами с размером, равным требуемому размеру страницы, а файл cookie — строку нулевой длины. Указанный размер страницы может быть больше нуля и меньше значения SizeLimit , указанного в поисковом запросе.
Если размер страницы больше или равен значению SizeLimit , описанному в разделе Параметры сеанса, сервер должен игнорировать элемент управления, так как запрос может быть выполнен на одной странице. Если сервер не поддерживает этот элемент управления, сервер должен вернуть ошибку неподдерживаемого критического расширения, если клиент запросил его как критическое, в противном случае сервер должен игнорировать элемент управления. В оставшейся части этого раздела предполагается, что сервер не игнорирует выгружаемую клиентом элемент управления результатами.
Клиент отправляет серверу запрос на поиск с простым элементом управления страничными результатами, а также пустой предыдущий ключ перечисления, также известный как "файл cookie", и начальный размер страницы. Затем сервер возвращает количество записей, указанное размером страницы, а также файл cookie, выданный при следующем запросе клиента, чтобы получить следующую страницу результатов. Затем клиент выполняет поиск с включенным файлом cookie, при необходимости сбрасывая размер страницы. Затем сервер возвращает результаты до указанного количества записей. Чтобы указать функции возвращать результаты напрямую, используйте синхронную подпрограмму ldap_search_ext_s.
Многопоточность: вызовы ldap_search_ext потокобезопасны.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | winldap.h |
Библиотека | Wldap32.lib |
DLL | Wldap32.dll |
См. также раздел
Уведомления об изменениях в Active Directory
Расширенные элементы управления