IDirectorySearch 的服务器时间限制
在繁忙的服务器上请求搜索时,可能需要请求服务器将搜索限制在指定时间限制内。 例如,你要运行一个应用程序,以便在接近其容量的服务器上生成每周报告。 为避免占用所有 CPU 时间并妨碍其他操作的运行,可将搜索时间限制指定为一个较小的值,然后在无法生成报告的情况下稍后重新运行应用程序。
某些服务器可能会设置自己的管理时间限制。 在这种情况下,如果指定的搜索时间限制值大于管理时间限制值,则服务器将忽略你的指定,而改为使用其内部时间限制值。
服务器时间限制的默认值为无限制。 若要设置服务器时间限制,请在传递给 IDirectorySearch::SetSearchPreference 方法的 ADS_SEARCHPREF_INFO 数组中设置 ADS_SEARCHPREF_TIME_LIMIT 搜索选项,并附带包含服务器时间限制(以秒为单位)的 ADSTYPE_INTEGER 值。 下面的代码示例对此操作进行了演示。 服务器时间限制为零表示没有时间限制。
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIME_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;