Поделиться через


Ограничение размера с помощью IDirectorySearch

Чтобы уменьшить требования к памяти или для других целей, клиент может сосредоточиться на небольшом количестве объектов, возвращаемых сервером, и игнорировать остальную часть результирующий набор, который не является интересом. Для этого клиент указывает ограничение размера поиска и другие соответствующие критерии поиска. Например, если каталог хранит оценки тестов школьного округа, можно запросить лучших десяти учащихся с самыми высокими оценками тестов, указав ограничение размера 10 (10) и порядок сортировки по убыванию.

Значение по умолчанию для ограничения размера не ограничено. Чтобы задать ограничение размера, задайте параметр поиска ADS_SEARCHPREF_SIZE_LIMIT со значением ADSTYPE_INTEGER, которое содержит максимальный размер в массиве ADS_SEARCHPREF_INFO, переданном методу IDirectorySearch::SetSearchPreference.

В следующем примере кода показано, как задать ограничение размера. Значение ограничения размера нуля не указывает на ограничение размера.

ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_SIZE_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 1000;

Для Active Directory ограничение размера указывает максимальное количество объектов, возвращаемых поиском. Кроме того, для Active Directory максимальное количество объектов, возвращаемых поиском, составляет 1000 объектов.