Необходимо установить DirectorySearcher. PageSize к ненулевому значению для получения всех результатов.
BTW необходимо также расположить DirectorySearcher, когда Вы закончены с ним
using(var srch = new DirectorySearcher(dirEnt, "(objectClass=Group)", loadProps))
{
srch.PageSize = 1000;
var results = srch.FindAll();
}
, документация API не является очень четкой, но по существу:
, когда Вы делаете разбитый на страницы поиск, SizeLimit проигнорирован, и все результаты соответствия возвращаются, поскольку Вы выполняете итерации через результаты, возвращенные FindAll. Результаты будут получены с сервера страница за один раз. Я выбрал значение 1 000 выше, но можно использовать меньшее значение, если предпочтено. Компромисс: использование небольшого PageSize возвратит каждую страницу результатов быстрее, но потребует более частых вызовов к серверу при итерации по большому количеству результатов.
по умолчанию поиск не разбит на страницы (PageSize = 0). В этом случае до SizeLimit результаты возвращается.
Как Biri, на который указывают, важно расположить SearchResultCollection, возвращенный FindAll, иначе у Вас может быть утечка памяти , как описано в разделе Remarks документации MSDN для DirectorySearcher. FindAll.
Один способ помочь избежать это в.NET 2.0 или позже должно записать метод обертки, который автоматически располагает SearchResultCollection. Это могло бы посмотреть что-то как следующее (или мог быть дополнительный метод в.NET 3.5):
public IEnumerable SafeFindAll(DirectorySearcher searcher)
{
using(SearchResultCollection results = searcher.FindAll())
{
foreach (SearchResult result in results)
{
yield return result;
}
} // SearchResultCollection will be disposed here
}
Вы могли тогда использовать это следующим образом:
using(var srch = new DirectorySearcher(dirEnt, "(objectClass=Group)", loadProps))
{
srch.PageSize = 1000;
var results = SafeFindAll(srch);
}
Это изменения, которые я должен был сделать для Windows 7 по рецепту Кева:
Шаг 3: netsh http show urlacl
Шаг 4: netsh http delete urlacl url=http://+:80/MSDEPLOYAGENTSERVICE/
netsh http add urlacl url=http://+:8172/MSDEPLOYAGENTSERVICE/ sddl=D:(A;;GX;;;NS)
Также стоит знать магию выяснения того, какое свойство хранится в каком ключе реестра - введите Orca.exe - бесценный и простой в использовании инструмент для чтения / изменения базы данных MSI (старайтесь не изменять хотя).
Во-первых, нам нужно найти свойство в таблице свойств
Как только свойство будет найдено, перейдите к таблице реестра и найдите, куда оно вставлено. ,