Limite di tempo del server con IDirectorySearch
Quando si richiede una ricerca in un server occupato, è possibile richiedere al server di limitare la ricerca a un limite di tempo specificato. Ad esempio, si vuole eseguire un'applicazione per generare un report settimanale in un server in esecuzione vicino alla sua capacità. Per evitare di usare tutto il tempo di CPU e impedire l'esecuzione di altre operazioni, specificare il limite di tempo di ricerca a un valore ridotto e quindi eseguire di nuovo l'applicazione in un secondo momento se non riesce a generare il report.
Alcuni server potrebbero imporre il proprio limite di tempo amministrativo. In questi casi, se si specifica un valore limite di tempo di ricerca maggiore del limite di tempo amministrativo, il server ignorerà la specifica e userà invece il relativo valore limite di tempo interno.
Il valore predefinito per il limite di tempo del server non è limitato. Per impostare un limite di tempo del server, impostare un'opzione di ricerca ADS_edizione StandardARCHPREF_TIME_LIMIT con un valore ADSTYPE_INTEGER contenente il limite di tempo del server, in secondi, nella matrice ADS_edizione StandardARCHPREF_INFO passata al metodo IDirectorySearch::SetSearchPreference. Questa operazione è illustrata nell'esempio di codice seguente. Un limite di tempo del server pari a zero indica che non è previsto alcun limite di tempo.
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIME_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;