Share via


Limite de tamanho com IDirectorySearch

Para reduzir o requisito de memória ou para outros fins, o cliente pode se concentrar em um pequeno número de objetos retornados do servidor e ignorar o restante do conjunto de resultados que não são de interesse. Para fazer isso, o cliente especifica o limite de tamanho de pesquisa e outros critérios de pesquisa apropriados. Por exemplo, se o diretório armazenar as pontuações de teste de um distrito escolar, você poderá consultar os dez melhores alunos com as pontuações mais altas do teste especificando um limite de tamanho de dez (10) e uma ordem de classificação decrescente.

O padrão para limite de tamanho é sem limite. Para definir um limite de tamanho, defina uma opção de pesquisa ADS_SEARCHPREF_SIZE_LIMIT com um valor ADSTYPE_INTEGER que contenha o tamanho máximo na matriz ADS_SEARCHPREF_INFO passado para o método IDirectorySearch::SetSearchPreference .

O exemplo de código a seguir mostra como definir o limite de tamanho. Um valor limite de tamanho de zero indica nenhum limite de tamanho.

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

Para o Active Directory, o limite de tamanho especifica o número máximo de objetos a serem retornados pela pesquisa. Também para o Active Directory, o número máximo de objetos retornados por uma pesquisa é 1000 objetos.