Límite de tamaño con IDirectorySearch
Para reducir el requisito de memoria o para otros fines, el cliente puede centrarse en un pequeño número de objetos devueltos desde el servidor y omitir el resto del conjunto de resultados que no son de interés. Para ello, el cliente especifica el límite de tamaño de búsqueda y otros criterios de búsqueda adecuados. Por ejemplo, si el directorio almacena las puntuaciones de prueba de un distrito escolar, puede consultar los diez primeros alumnos con las puntuaciones de prueba más altas especificando un límite de tamaño de diez (10) y un criterio de ordenación descendente.
El valor predeterminado para el límite de tamaño no es ningún límite. Para establecer un límite de tamaño, establezca una opción de búsqueda ADS_SEARCHPREF_SIZE_LIMIT con un valor de ADSTYPE_INTEGER que contenga el tamaño máximo de la matriz de ADS_SEARCHPREF_INFO que se pasa al método IDirectorySearch::SetSearchPreference .
En el ejemplo de código siguiente se muestra cómo establecer el límite de tamaño. Un valor de límite de tamaño de cero indica que no hay límite de tamaño.
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_SIZE_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 1000;
Para Active Directory, el límite de tamaño especifica el número máximo de objetos devueltos por la búsqueda. Además para Active Directory, el número máximo de objetos devueltos por una búsqueda es de 1000 objetos.