Límite de tiempo del servidor con IDirectorySearch
Al solicitar una búsqueda en un servidor ocupado, es posible que desee solicitar que el servidor restrinja la búsqueda a un límite de tiempo especificado. Por ejemplo, quiere ejecutar una aplicación para generar un informe semanal en un servidor que se ejecuta cerca de su capacidad. Para evitar el uso de todo el tiempo de CPU y evitar que se ejecuten otras operaciones, especifique el límite de tiempo de búsqueda en un valor pequeño y vuelva a ejecutar la aplicación más adelante si no se puede generar el informe.
Algunos servidores pueden imponer su propio límite de tiempo administrativo. En estos casos, si especifica un valor de límite de tiempo de búsqueda mayor que el límite de tiempo administrativo, el servidor omitirá la especificación y usará su valor de límite de tiempo interno en su lugar.
El valor predeterminado para el límite de tiempo del servidor no es ningún límite. Para establecer un límite de tiempo del servidor, establezca una opción de búsqueda ADS_SEARCHPREF_TIME_LIMIT con un valor de ADSTYPE_INTEGER que contenga el límite de tiempo del servidor, en segundos, en la matriz de ADS_SEARCHPREF_INFO pasada al método IDirectorySearch::SetSearchPreference . Esta operación se muestra en el ejemplo de código siguiente. Un límite de tiempo del servidor de cero indica que no hay límite de tiempo.
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIME_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;