Свойства активного каталога Powershell - PullRequest
1 голос
/ 08 апреля 2011

Я пытаюсь найти свойства активного каталога:

$strFilter = "(&(objectCategory=User))"

$objDomain = New-Object System.DirectoryServices.DirectoryEntry

$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1000
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = "Subtree"

$colResults = $objSearcher.FindAll() 

foreach ($objResult in $colResults){   
    $objItem = $objResult.Properties

Я могу вызвать $ objitem.name, но я не знаю, какие другие свойства у меня есть.

Как мне узнать, к каким свойствам я могу получить доступ из $ objitem?

редактирование:

Использовал это решение, используя ответы ниже:

foreach ($objResult in $colResults){   
   ($colResults)[0].Properties.PropertyNames
}

Ответы [ 3 ]

3 голосов
/ 08 апреля 2011
foreach ($objResult in $colResults){   
    $objResult.Properties | % {$_.propertynames}
}

должен отображать ключи каждого свойства результата.

0 голосов
/ 08 апреля 2011

Хорошо, предыдущие ответы - это функции "Powershell". Если вы действительно хотите знать, какие атрибуты вы можете получить для данного класса (здесь clas user ), вам нужно взглянуть на схему. который доступен на сервере Windows при регистрации COM-объекта schmmgmt.dll .

C:\>regsvr32 c:\WINDOWS\system32\schmmgmt.dll

JP

0 голосов
/ 08 апреля 2011

Используйте командлет get-member (с псевдонимом gm), чтобы получить все свойства и методы.Например,

$objItem | gm

Другой способ - передать объект в командлет format-list (с псевдонимом fl), в котором не будут перечислены методы.Вот так

$objItem | fl *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...