Condividi tramite


enumerazione ADS_SEARCHPREF_ENUM (iads.h)

L'enumerazione ADS_SEARCHPREF_ENUM specifica le preferenze per un oggetto IDirectorySearch . Questa enumerazione viene usata nel membro dwSearchPref della struttura ADS_SEARCHPREF_INFO nel metodo IDirectorySearch::SetSearchPreference .

Sintassi

typedef enum __MIDL___MIDL_itf_ads_0000_0000_0025 {
  ADS_SEARCHPREF_ASYNCHRONOUS = 0,
  ADS_SEARCHPREF_DEREF_ALIASES,
  ADS_SEARCHPREF_SIZE_LIMIT,
  ADS_SEARCHPREF_TIME_LIMIT,
  ADS_SEARCHPREF_ATTRIBTYPES_ONLY,
  ADS_SEARCHPREF_SEARCH_SCOPE,
  ADS_SEARCHPREF_TIMEOUT,
  ADS_SEARCHPREF_PAGESIZE,
  ADS_SEARCHPREF_PAGED_TIME_LIMIT,
  ADS_SEARCHPREF_CHASE_REFERRALS,
  ADS_SEARCHPREF_SORT_ON,
  ADS_SEARCHPREF_CACHE_RESULTS,
  ADS_SEARCHPREF_DIRSYNC,
  ADS_SEARCHPREF_TOMBSTONE,
  ADS_SEARCHPREF_VLV,
  ADS_SEARCHPREF_ATTRIBUTE_QUERY,
  ADS_SEARCHPREF_SECURITY_MASK,
  ADS_SEARCHPREF_DIRSYNC_FLAG,
  ADS_SEARCHPREF_EXTENDED_DN
} ADS_SEARCHPREF_ENUM;

Costanti

 
ADS_SEARCHPREF_ASYNCHRONOUS
Valore: 0
Specifica che le ricerche devono essere eseguite in modo asincrono. Per impostazione predefinita, le ricerche sono sincrone.

In una ricerca sincrona, i metodi IDirectorySearch::GetFirstRow e IDirectorySearch::GetNextRow non vengono restituiti finché il server restituisce l'intero risultato o per una ricerca in pagina, l'intera pagina.

Una ricerca asincrona blocca fino a quando non è disponibile una riga dei risultati della ricerca o fino all'intervallo di timeout specificato dall'ADS_SEARCHPREF_TIMEOUT preferenza di ricerca trascorsa.
ADS_SEARCHPREF_DEREF_ALIASES
Specifica che gli alias degli oggetti trovati devono essere risolti. Usare l'enumerazione ADS_DEREFENUM per specificare la modalità di esecuzione.
ADS_SEARCHPREF_SIZE_LIMIT
Specifica il limite di dimensioni che il server deve osservare durante una ricerca. Il server smette di cercare quando viene raggiunto il limite di dimensioni e restituisce i risultati accumulati a quel punto. Se questo valore è zero, il limite di dimensioni viene determinato dal servizio directory. Il valore predefinito per questo valore è zero. Se questo valore è maggiore del limite di dimensioni determinato dal servizio directory, il limite del servizio directory ha la precedenza.

Per Active Directory, il limite di dimensioni specifica il numero massimo di oggetti da restituire dalla ricerca. Anche per Active Directory, il numero massimo di oggetti restituiti da una ricerca è 1000 oggetti.
ADS_SEARCHPREF_TIME_LIMIT
Specifica il numero di secondi in cui il server attende il completamento di una ricerca. Quando viene raggiunto il limite di tempo, il server interrompe la ricerca e restituisce i risultati accumulati a tale punto. Se questo valore è zero, il periodo di timeout è infinito. Il valore predefinito per questo valore è 120 secondi.
ADS_SEARCHPREF_ATTRIBTYPES_ONLY
Indica che la ricerca deve ottenere solo il nome degli attributi a cui vengono assegnati i valori.
ADS_SEARCHPREF_SEARCH_SCOPE
Specifica l'ambito di ricerca che deve essere osservato dal server. Per altre informazioni sulle impostazioni appropriate, vedere l'enumerazione ADS_SCOPEENUM .
ADS_SEARCHPREF_TIMEOUT
Specifica il limite di tempo, in secondi, che un client attenderà che il server restituisca il risultato. Questa opzione è impostata in una struttura ADS_SEARCHPREF_INFO .
ADS_SEARCHPREF_PAGESIZE
Specifica le dimensioni della pagina in una ricerca in pagina. Per ogni richiesta dal client, il server restituisce, al massimo, il numero di oggetti impostato in base alle dimensioni della pagina. Quando le dimensioni della pagina sono impostate, non è necessario impostare il limite di dimensioni. Se viene impostato un limite di dimensioni, il valore per le dimensioni della pagina deve essere minore del valore per il limite di dimensioni. Se il valore per le dimensioni della pagina supera il limite di dimensioni, viene restituito l'errore ERROR_DS_SIZELIMIT_EXCEEDED con il numero di righe specificate per limite di dimensioni.
ADS_SEARCHPREF_PAGED_TIME_LIMIT
Specifica il numero di secondi che il server deve attendere una pagina dei risultati della ricerca, anziché il limite di tempo per l'intera ricerca. Quando viene raggiunto il limite di tempo, il server interrompe la ricerca e restituisce i risultati ottenuti fino a quel punto, insieme a un cookie che contiene i dati relativi alla posizione in cui riprendere la ricerca. Se questo valore è zero, il periodo di timeout della pagina è infinito. Il valore predefinito per questo limite è di 120 secondi.
ADS_SEARCHPREF_CHASE_REFERRALS
Specifica che le segnalazioni possono essere inseguite. Se la ricerca radice non viene specificata nel contesto di denominazione del server o quando i risultati della ricerca superano un contesto di denominazione, ad esempio quando si hanno domini figlio e si esegue la ricerca nel dominio padre, il server invia un messaggio di riferimento al client che può scegliere di ignorare o inseguire. Per altre informazioni sull'inseguimento delle segnalazioni, vedere ADS_CHASE_REFERRALS_ENUM.
ADS_SEARCHPREF_SORT_ON
Specifica che il server ordina il set di risultati. Usare la struttura ADS_SORTKEY per specificare le chiavi di ordinamento. Questa preferenza di ricerca funziona solo per i server directory che supportano il controllo LDAP per l'ordinamento lato server. Active Directory supporta il controllo di ordinamento, ma può influire sulle prestazioni del server, in particolare se il set di risultati è di grandi dimensioni. Active Directory supporta solo una singola chiave di ordinamento.
ADS_SEARCHPREF_CACHE_RESULTS
Specifica se il risultato deve essere memorizzato nella cache sul lato client. Per impostazione predefinita, ADSI memorizza nella cache il set di risultati. La disabilitazione di questa opzione può essere auspicabile per i set di risultati di grandi dimensioni.
ADS_SEARCHPREF_DIRSYNC
Specifica una ricerca di sincronizzazione della directory (DirSync), che restituisce tutte le modifiche da uno stato specificato. Nella struttura ADSVALUE impostare il membro dwType su ADS_PROV_SPECIFIC. Il membro ProviderSpecific è una struttura ADS_PROV_SPECIFIC il cui membro lpValue specifica un cookie che indica lo stato da cui vengono recuperate le modifiche. La prima volta che si usa il controllo DirSync, impostare rispettivamente i membri dwLength e lpValue della struttura ADS_PROV_SPECIFIC su zero e NULL . Dopo aver letto il set di risultati restituito dalla ricerca fino a quando IDirectorySearch::GetNextRow restituisce S_ADS_NOMORE_ROWS, chiamare IDirectorySearch::GetColumn per recuperare l'attributo ADS_DIRSYNC_COOKIE che contiene un cookie da usare nella ricerca DirSync successiva. Per altre informazioni, vedere Polling per le modifiche usando il controllo DirSync e LDAP_SERVER_DIRSYNC_OID.

Questo flag non può essere combinato con ADS_SEARCHPREF_PAGESIZE.

Il chiamante deve avere il privilegio di SE_SYNC_AGENT_NAME .
ADS_SEARCHPREF_TOMBSTONE
Specifica se la ricerca deve restituire anche oggetti eliminati che corrispondono al filtro di ricerca. Quando gli oggetti vengono eliminati, Active Directory li sposta in un contenitore "Oggetti eliminati". Per impostazione predefinita, gli oggetti eliminati non sono inclusi nei risultati della ricerca. Nella struttura ADSVALUE impostare il membro dwType su ADSTYPE_BOOLEAN. Per includere oggetti eliminati, impostare il membro booleano della struttura ADSVALUE su TRUE.

Non tutti gli attributi vengono mantenuti quando l'oggetto viene eliminato. È possibile recuperare gli attributi objectGUID e RDN . L'attributo distinguishedName è il DN dell'oggetto nel contenitore "Oggetti eliminati", non la DN precedente. L'attributo isDeleted è TRUE per un oggetto eliminato. Per altre informazioni, vedere Recupero di oggetti eliminati.
ADS_SEARCHPREF_VLV
Specifica che la ricerca deve usare il controllo VLV (LDAP Virtual List View). ADS_SEARCHPREF_VLV può essere usato per accedere a ricerche VLV di tipo stringa e di tipo offset, impostando i campi appropriati. Queste due opzioni non possono essere usate simultaneamente perché non è possibile impostare il controllo VLV per richiedere un set di risultati che si trova in un offset specifico e segue un determinato valore nella sequenza di ordinamento.

Per eseguire una ricerca stringa, impostare il campo lpszTarget in ADS_VLV sulla stringa da cercare. Per eseguire una ricerca dei tipi di offset, impostare il campo dwOffset in ADS_VLV. Se si usa una ricerca di offset, è necessario impostare lpszTarget su NULL.

ADS_SEARCHPREF_SORT_ON deve essere impostato su TRUE quando si usa ADS_SEARCHPREF_VLV. L'ordinamento dei risultati della ricerca determina l'ordine usato per la ricerca VLV. Se si esegue una ricerca di tipo offset, l'offset viene usato come indice nell'elenco ordinato. Se si esegue una ricerca di tipo stringa, il server tenta di restituire la prima voce maggiore o uguale alla stringa, in base all'ordine di ordinamento.

La memorizzazione nella cache dei risultati della ricerca è disabilitata quando viene specificata ADS_SEARCHPREF_VLV .

Se si assegna ADS_SEARCHPREF_CACHE_RESULTS un valore TRUE, quando si usa ADS_SEARCHPREF_VLV, SetSearchPreference avrà esito negativo e restituirà l'errore E_ADS_BAD_PARAMETER.
ADS_SEARCHPREF_ATTRIBUTE_QUERY
Specifica che deve essere eseguita una ricerca di query con ambito attributo. La ricerca viene eseguita su tali oggetti denominati in un attributo specificato dell'oggetto base. Il membro vValue della struttura ADS_SEARCHPREF_INFO contiene un valore ADSTYPE_CASE_IGNORE_STRING contenente lDAPDisplayName dell'attributo da cercare. Questo attributo deve essere un attributo ADS_DN_STRING . È possibile specificare un solo attributo. L'ambito di ricerca viene impostato automaticamente su ADS_SCOPE_BASE quando si usa questa preferenza e si tenta di impostare l'ambito altrimenti avrà esito negativo con l'errore E_ADS_BAD_PARAMETER. Ad eccezione della preferenza ADS_SEARCHPREF_VLV , tutte le altre preferenze che usano controlli LDAP, ad esempio ADS_SEARCHPREF_DIRSYNC, ADS_SEARCHPREF_TOMBSTONE e così via, non sono consentite quando questa preferenza viene specificata.
ADS_SEARCHPREF_SECURITY_MASK
Specifica che la ricerca deve restituire i dati di accesso alla sicurezza per gli attributi specificati. Il membro vValue della struttura ADS_SEARCHPREF_INFO contiene un valore ADS_INTEGER che è una combinazione di uno o più dei valori seguenti.






















ValoreDescrizione
ADS_SECURITY_INFO_OWNERLegge i dati del proprietario.
ADS_SECURITY_INFO_GROUPLegge i dati del gruppo.
ADS_SECURITY_INFO_DACLLegge l'elenco di controllo di accesso discrezionale (DACL).
ADS_SECURITY_INFO_SACLLegge l'elenco di controllo di accesso del sistema (SACL).

 

Se si legge un descrittore di sicurezza senza specificare in modo esplicito una maschera di sicurezza usando ADS_SEARCHPREF_SECURITY_MASK, viene predefinito l'equivalente di ADS_SECURITY_INFO_OWNER
ADS_SECURITY_INFO_GROUP ADS_SECURITY_INFO_DACL.
ADS_SEARCHPREF_DIRSYNC_FLAG
Contiene flag facoltativi da usare con la preferenza di ricerca ADS_SEARCHPREF_DIRSYNC . Il membro vValue della struttura ADS_SEARCHPREF_INFO contiene un valore ADSTYPE_INTEGER zero o una combinazione di uno o più dei valori seguenti. Per altre informazioni sul controllo DirSync, vedere Polling for Changes Using the DirSync Control and LDAP_SERVER_DIRSYNC_OID.



























IdentificatoreValoreDescrizione
LDAP_DIRSYNC_OBJECT_SECURITY1Se questo flag non è presente, il chiamante deve avere la modifica corretta della replica. Se questo flag è presente,
il chiamante non richiede alcun diritto, ma è consentito visualizzare solo gli oggetti e gli attributi accessibili al chiamante.
LDAP_DIRSYNC_ANCESTORS_FIRST_ORDER2048 (0x00000800)Restituire oggetti padre prima degli oggetti figlio, quando gli oggetti padre verranno visualizzati in un secondo momento nel flusso di replica.
LDAP_DIRSYNC_PUBLIC_DATA_ONLY8192 (0x00002000)Non vengono restituiti dati privati nei risultati della ricerca.
LDAP_DIRSYNC_INCREMENTAL_VALUES2147483648 (0x80000000)Se questo flag non è presente, quando viene modificato un valore, verranno restituiti tutti i valori di un attributo multivalore fino al raggiungimento di un limite specificato dal server. Se invece il flag è presente, verranno restituiti solo i valori modificati.
ADS_SEARCHPREF_EXTENDED_DN
La ricerca deve restituire nomi distinti nel formato esteso di Active Directory. Il membro vValue della struttura ADS_SEARCHPREF_INFO contiene un valore ADSTYPE_INTEGER contenente zero se le parti GUID e SID della stringa DN devono essere in formato esadecimale o una se le parti GUID e SID della stringa DN devono essere in formato standard. Per altre informazioni sui nomi distinti estesi, vedere LDAP_SERVER_EXTENDED_DN_OID.

Commenti

Per configurare una preferenza di ricerca, assegnare valori appropriati ai campi di una struttura ADS_SEARCHPREF_INFO passata al server. Il membro vValue della struttura ADS_SEARCHPREF_INFO è una struttura ADSVALUE . Nell'elenco seguente sono elencati i valori ADS_SEARCHPREF_ENUM , i valori corrispondenti per il membro dwType della struttura ADSVALUE e il membro ADSVALUE utilizzato per il tipo specificato.

valore ADS_SEARCHPREF_ENUM membro dwType di ADSVALUE Membro ADSVALUE
ADS_SEARCHPREF_ASYNCHRONOUS ADSTYPE_BOOLEAN Boolean
ADS_SEARCHPREF_DEREF_ALIASES ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_SIZE_LIMIT ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_TIME_LIMIT ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_ATTRIBTYPES_ONLY ADSTYPE_BOOLEAN Boolean
ADS_SEARCHPREF_SEARCH_SCOPE ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_TIMEOUT ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_PAGESIZE ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_PAGED_TIME_LIMIT ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_CHASE_REFERRALS ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_SORT_ON ADSTYPE_PROV_SPECIFIC ProviderSpecific
ADS_SEARCHPREF_CACHE_RESULTS ADSTYPE_BOOLEAN Boolean
ADS_SEARCHPREF_DIRSYNC ADSTYPE_PROV_SPECIFIC ProviderSpecific
ADS_SEARCHPREF_TOMBSTONE ADSTYPE_BOOLEAN Boolean
ADS_SEARCHPREF_VLV ADSTYPE_PROV_SPECIFIC ProviderSpecific
ADS_SEARCHPREF_ATTRIBUTE_QUERY ADSTYPE_CASE_IGNORE_STRING CaseIgnoreString
ADS_SEARCHPREF_SECURITY_MASK ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_DIRSYNC_FLAG ADSTYPE_INTEGER Integer
ADS_SEARCHPREF_EXTENDED_DN ADSTYPE_INTEGER Integer
 

Per configurare più preferenze, usare una matrice di strutture ADS_SEARCHPREF_INFO . I valori membro di questa enumerazione vengono assegnati al membro dwSearchPref della struttura ADS_SEARCHPREF_INFO .

Tutte le opzioni sono supportate dal provider di sistema LDAP.

Poiché VBScript non riesce a leggere i dati da una libreria di tipi, le applicazioni VBScript non riconoscono le costanti simboliche definite in precedenza. È consigliabile usare le costanti numeriche, invece, per impostare i flag appropriati nelle applicazioni VBScript. Per usare le costanti simboliche, come buona pratica di programmazione, dichiarare in modo esplicito tali costanti, come fatto qui, nelle applicazioni VBScript.

Esempio

Nell'esempio di codice seguente viene illustrato come configurare le preferenze di ricerca usando l'enumerazione ADS_SEARCHPREF_INFO .

HRESULT SetSearchPreferences2(
    DWORD dwScope,// -1 indicates default: subtree.
    DWORD dwOverallTimeOut,// <=0 indicates default: no time out set.
    DWORD dwOverallSizeLimit,// <=0 indicates default: no size limit set.
    DWORD dwOverallTimeLimit,// <=0 indicates default: no time limit set.
    BOOL bCacheResult,// TRUE indicates default.
    BOOL bIsAsynchronous,// FALSE indicates default.
    DWORD dwPageSize,// <=0 indicates default.
    DWORD dwPageTimeLimit,// <=0 indicates default.
    DWORD dwChaseReferral,// <=0 indicates default.
    LPOLESTR szSortKey,// NULL indicates do not sort.
    BOOL bIsDescending,
    BOOL bReturnAttributeNamesOnly,// FALSE indicates default.
    ADS_SEARCHPREF_INFO **ppSearchPref, // Return an array of search preferences.
    DWORD *pdwSearchPrefCount
)
{
   HRESULT hr = S_OK;
   DWORD dwCountPref = 0L;
 
   // Determine size of preferences array.
   DWORD dwTotal = 11L;
 
   if(dwScope==-1)
       dwTotal--;
   if(dwOverallTimeOut<=0)
       dwTotal--;
   if(dwOverallSizeLimit<=0)
       dwTotal--;
   if(dwOverallTimeLimit<=0)
       dwTotal--;
   if(bCacheResult)
       dwTotal--;
   if(!bIsAsynchronous)
       dwTotal--;
   if(dwPageSize<=0)
       dwTotal--;
   if(dwPageTimeLimit<=0)
       dwTotal--;
   if(dwChaseReferral<=0)
       dwTotal--;
   if(!bReturnAttributeNamesOnly)
       dwTotal--;
   if (!szSortKey)
       dwTotal--;
 
   ADS_SEARCHPREF_INFO *prefInfo = new ADS_SEARCHPREF_INFO[ dwTotal ];
   ADS_SORTKEY SortKey;

    if(!prefInfo)
    {
        return E_OUTOFMEMORY;
    }
 
    //////////////////
    // Search Scope
    //////////////////
    if(dwScope>=0)
    {
        prefInfo[dwCountPref].dwSearchPref =
                         ADS_SEARCHPREF_SEARCH_SCOPE;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;
        prefInfo[dwCountPref].vValue.Integer = dwScope;
        dwCountPref++;
    }
 
    //////////////////
    // Time Out
    //////////////////
    if(dwOverallTimeOut>0)
    {
       prefInfo[dwCountPref].dwSearchPref = ADS_SEARCHPREF_TIMEOUT;
       prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;
       prefInfo[dwCountPref].vValue.Integer = dwOverallTimeOut;
       dwCountPref++;
    }
 
    ///////////////
    // Size Limit
    ///////////////
    if(dwOverallSizeLimit>0)
    {
       prefInfo[dwCountPref].dwSearchPref = ADS_SEARCHPREF_SIZE_LIMIT;
       prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;
       prefInfo[dwCountPref].vValue.Integer = dwOverallSizeLimit;
       dwCountPref++;
    }
 
    ///////////////
    // Time Limit
    ///////////////
    if(dwOverallTimeLimit>0) 
    {
       prefInfo[dwCountPref].dwSearchPref = ADS_SEARCHPREF_TIME_LIMIT;
       prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;
       prefInfo[dwCountPref].vValue.Integer = dwOverallTimeLimit;
       dwCountPref++;
    }
 
    /////////////////
    // Cache Result
    /////////////////
 
    if (!bCacheResult)
    {
        prefInfo[dwCountPref].dwSearchPref =
                              ADS_SEARCHPREF_CACHE_RESULTS;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_BOOLEAN;
        prefInfo[dwCountPref].vValue.Boolean = bCacheResult;
        dwCountPref++;
    }
 
    //////////////
    // Page Size
    //////////////
    if(dwPageSize>0)
    {
        prefInfo[dwCountPref].dwSearchPref = ADS_SEARCHPREF_PAGESIZE;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;;
        prefInfo[dwCountPref].vValue.Integer = dwPageSize;
        dwCountPref++;
    }
 
    //////////////////
    // Page Time Limit
    //////////////////
    if(dwPageTimeLimit>0)
    {
        prefInfo[dwCountPref].dwSearchPref = 
                                      ADS_SEARCHPREF_PAGED_TIME_LIMIT;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;;
        prefInfo[dwCountPref].vValue.Integer = dwPageTimeLimit;
        dwCountPref++;
    }
 
    ///////////////////
    // Chase Referrals
    ///////////////////
    if(dwChaseReferral>0)
    {
        prefInfo[dwCountPref].dwSearchPref =
                                      ADS_SEARCHPREF_CHASE_REFERRALS;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_INTEGER;
        prefInfo[dwCountPref].vValue.Integer = dwChaseReferral;
        dwCountPref++;
    }
 
    /////////////
    // Sort
    /////////////
    if (szSortKey)
    {
        prefInfo[dwCountPref].dwSearchPref = ADS_SEARCHPREF_SORT_ON;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_PROV_SPECIFIC;
        SortKey.pszAttrType = (LPWSTR)LocalAlloc(
                        LPTR,
                        wcslen(szSortKey)*sizeof(WCHAR) +sizeof(WCHAR)
                        );
        wcscpy_s(SortKey.pszAttrType,szSortKey);
        SortKey.pszReserved = NULL;
        SortKey.fReverseorder = 0;
        prefInfo[dwCountPref].vValue.ProviderSpecific.dwLength = 
                                                 sizeof(ADS_SORTKEY);
        prefInfo[dwCountPref].vValue.ProviderSpecific.lpValue = 
                                                 (LPBYTE) &SortKey;
        dwCountPref++;
    }
    
    /////////////////
    // Asynchronous
    /////////////////
    if(bIsAsynchronous)
    {
        prefInfo[dwCountPref].dwSearchPref =
                                     ADS_SEARCHPREF_ASYNCHRONOUS;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_BOOLEAN;
        prefInfo[dwCountPref].vValue.Integer = bIsAsynchronous;
        dwCountPref++;
    }
 
    ////////////////////////
    // Attribute Type Only
    ////////////////////////
    if(bReturnAttributeNamesOnly)
    {
        prefInfo[dwCountPref].dwSearchPref =
                                  ADS_SEARCHPREF_ATTRIBTYPES_ONLY;
        prefInfo[dwCountPref].vValue.dwType = ADSTYPE_BOOLEAN;
        prefInfo[dwCountPref].vValue.Integer = 
                                  bReturnAttributeNamesOnly;
        dwCountPref++;
    }
 
    if (SUCCEEDED(hr))
    {
        *pdwSearchPrefCount = dwCountPref;
        *ppSearchPref  = prefInfo;
    }
    else
    {
        *pdwSearchPrefCount = 0L;
        *ppSearchPref  = NULL;
    }
 
 
    return hr;
}

Requisiti

   
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Intestazione iads.h

Vedi anche

Enumerazioni ADSI

ADSVALUE

ADS_CHASE_REFERRALS_ENUM

ADS_DEREFENUM

ADS_PROV_SPECIFIC

ADS_SCOPEENUM

ADS_SEARCHPREF_INFO

ADS_SORTKEY

ADS_VLV

IDirectorySearch::GetColumn

IDirectorySearch::GetNextRow

IDirectorySearch::SetSearchPreference

Polling per le modifiche tramite il controllo DirSync

Recupero di oggetti eliminati