Задать вопрос
@mdkolpakov

Как преобразовать объект Get-Acl?

Здравствуйте!
Программа создаёт GUI файловых каталогов в виде дерева. После открытия конечного каталога хочу поместить внутрь все группы безопасности, что могут зайти в каталог. Хочу сделать это с помощью такого кода:

Foreach ($i1 in $otdelFolders)
{
$TreeViewNode2 = $TreeViewNode1.Nodes.Add($i1)
$otdel1 = $otdel + '\' + $i1
$fold = Get-Acl $otdel1
$fold = $fold.Access.IdentityReference
$TreeViewNode3 = $TreeViewNode2.Nodes.Add($fold)
}

Ошибка из-за разных форматов.
Не удается преобразовать аргумент "node", со значением: "System.Object[]", для "Add" в тип "System.Windows.Forms.TreeNode": "Не удается преобразовать значение "System.Object[]" типа "System.Object[]" в тип "System.Windows.F
orms.TreeNode"."

Подскажите пожалуйста, как преобразовать объект, который получается в результате Get-Acl в строку или подходящий для node формат?

UPD: хотел бы видеть запрос несколькими нодами

Заранее благодарю!
  • Вопрос задан
  • 180 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Stepik
    PowerShell для начинающих: Основы для IT-специалистов
    1 неделя
    Далее
  • Skillbox
    Системный администратор с нуля
    6 месяцев
    Далее
  • Яндекс Практикум
    Специалист по информационной безопасности
    11 месяцев
    Далее
Решения вопроса 1
@NortheR73
системный инженер
Get-Acl возвращает вам, по сути, набор строк. Перебираете этот набор с помощью Foreach и добавляете каждую строку как node нужного уровня в TreeView:
PS C:\windows\system32> (Get-Acl c:\!New).Access.IdentityReference.Value
BUILTIN\Администраторы
NT AUTHORITY\СИСТЕМА
BUILTIN\Пользователи
NT AUTHORITY\Прошедшие проверку
NT AUTHORITY\Прошедшие проверку
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Монетка Екатеринбург
от 130 000 до 160 000 ₽
Vital Partners Москва
от 200 000 до 300 000 ₽
Сбер Москва
от 200 000 до 300 000 ₽