Limite de temps du serveur avec IDirectorySearch
Lorsque vous demandez une recherche sur un serveur occupé, vous souhaiterez peut-être demander que le serveur limite la recherche à une limite de temps spécifiée. Par exemple, vous souhaitez exécuter une application pour générer un rapport hebdomadaire sur un serveur qui exécute près de sa capacité. Pour éviter d’utiliser tout le temps processeur et empêcher les autres opérations de s’exécuter, spécifiez la limite de durée de recherche sur une petite valeur, puis réexécutez l’application ultérieurement si elle ne parvient pas à générer le rapport.
Certains serveurs peuvent imposer leur propre limite de temps d’administration. Dans ce cas, si vous spécifiez une valeur de limite de temps de recherche supérieure à la limite de temps d’administration, le serveur ignore votre spécification et utilise sa valeur de limite de temps interne à la place.
La valeur par défaut de la limite de durée du serveur est illimitée. Pour définir une limite de temps de serveur, définissez une option de recherche de _ _ _ limite de temps SEARCHPREF ADS avec une valeur _ entière ADSTYPE qui contient la limite de temps du serveur, en secondes, dans le tableau d' _ _ informations SEARCHPREF ADS passé à la méthode IDirectorySearch :: SetSearchPreference . Cette opération est illustrée dans l’exemple de code suivant. Une limite de délai de serveur de zéro indique qu’il n’existe aucune limite de temps.
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIME_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;