Книга: Windows Script Host для Windows 2000/XP

Список всех групп, в которые входит пользователь 

Список всех групп, в которые входит пользователь 

В сценарии ListGroups.js, который представлен в листинге 11.8, на экран выводятся названия всех локальных групп, в которые входит пользователь Popov на рабочей станции 404_Popov (рис. 11.7).


Рис. 11.7. Список всех групп, членом которых является заданный пользователь

Для создания коллекции групп, членом которых является пользователь, нужно выполнить связывание с нужным пользователем, т.е. создать экземпляр объекта User и воспользоваться методом Groups() этого объекта:

//Связывание с пользователем Popov компьютера
404_Popov UserObj = GetObject("WinNT://404_Popov/Popov");
//Создание объекта Enumerator для доступа к коллекции групп пользователя
E=new Enumerator(UserObj.Groups());

Как и в предыдущих примерах, после инициализации переменной SList в цикле while происходит перебор всех элементов полученной коллекции:

Slist="Пользователь Popov входит в группы: n";
//Цикл по всем элементам коллекции групп
while (!Е.atEnd()) {
 //Извлекаем элемент коллекции класса Group
 GroupObj=Е.item();
 //Формируем строку с названиями групп
 SList+=GroupObj.Name+"n";
 //Переходим к следующему элементу коллекции
 E.moveNext();
}

Как мы видим, название групп хранится в свойстве Name объекта Group.

Сформированная строка SList выводится на экран, как обычно, с помощью метода Echo() объекта WScript:

//Вывод информации на экран
WScript.Echo(SList);

Листинг 11.8. Вывод на экран названия всех групп, членом которых является заданный пользователь

/********************************************************************/
/* Имя: ListGroups.js                                               */
/* Язык: JScript                                                    */
/* Описание: Вывод на экран названия всех групп, членом которых     */
/*           является заданный пользователь                         */
/********************************************************************/
//Объявляем переменные
var
 UserObj,  //Экземпляр объекта User
 E,        //Объект Enumerator
 GroupObj, //Экземпляр объекта Group
 SList;    //Строка для вывода на экран
//Связывание с пользователем Popov компьютера 404_Popov
UserObj = GetObject("WinNT://404_Popov/Popov");
//Создание объекта Enumerator для доступа к коллекции групп пользователя
E=new Enumerator(UserObj.Groups());
SList="Пользователь Popov входит в группы:n";
//Цикл по всем элементам коллекции групп
while (!E.atEnd()) {
 //Извлекаем элемент коллекции класса Group
 GroupObj=E.item();
 //Формируем строку с названиями групп
 SList+=GroupObj.Name+"n";
 //Переходим к следующему элементу коллекции
 E.moveNext();
}
//Вывод информации на экран
WScript.Echo(SList);
/*************  Конец *********************************************/

Оглавление книги


Генерация: 1.525. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз