Condividi tramite


Utilizzo del metodo SetSearchPreference

La chiamata al metodo IDirectorySearch::SetSearchPreference modifica il modo in cui i risultati della ricerca vengono ottenuti e presentati tramite l'interfaccia IDirectorySearch.

La documentazione dell'SDK definisce SetSearchPreference come indicato di seguito:

HRESULT SetSearchPreference(
            //Search preferences to be set.
            PADS_SEARCHPREF_INFO pSearchPrefs,
            //Number of preferences.
            DWORD dwNumPrefs
            );

È possibile impostare più preferenze passando una matrice come primo parametro e le dimensioni della matrice come secondo parametro.

ADS_SEARCHPREF_INFO arSearchPrefs[2];
 
arSearchPrefs[0].dwSearchPref = ADS_SEARCHPREF_PAGESIZE; 
arSearchPrefs[0].vValue.dwType = ADSTYPE_INTEGER;
arSearchPrefs[0].vValue.Integer = 100;
 
arSearchPrefs[1].dwSearchPref = ADS_SEARCHPREF_SEARCH_SCOPE; 
arSearchPrefs[1].vValue.dwType = ADSTYPE_INTEGER; 
arSearchPrefs[1].vValue.Integer = ADS_SCOPE_SUBTREE; 
 
hr = pDSearch->SetSearchPreference(&arSearchPrefs, 2);

In questo esempio le dimensioni della pagina vengono impostate su 100 righe e l'ambito sul tipo di ADS_SCOPE_SUBTRedizione Enterprise. L'impostazione delle dimensioni della pagina fa sì che il server restituisca immediatamente i dati al client, dopo che sono state calcolate 100 righe. L'impostazione ADS_SCOPE_SUBTRedizione Enterprise fa sì che la ricerca includa tutti i rami dell'albero sotto il punto da cui viene eseguita la ricerca.