Windows Script Host для Windows 2000/XP
Шрифт:
//Создание объекта Enumerator для доступа к коллекции пользователей
E=new Enumerator(GroupObj.Members);
После инициализации переменной
SList
мы обрабатываем в цикле while
все элементы полученной коллекции; на каждом шаге цикла к переменной SList
добавляется имя текущего пользователя (поле Name
в объекте user
— текущем элементе коллекции): SList="Bce пользователи группы Пользователи на компьютере 404_Popov:\n";
//Цикл
по всем элементам коллекции пользователей
while (!E.atEnd) {
//Извлечение элемента коллекции класса User
UserObj=Е.item;
//Формируем строку с именами пользователей
SList+=UserObj.Name+"\n";
//Переходим к следующему элементу коллекции
E.moveNext;
}
После выхода из цикла сформированная строка
SList
выводится на экран (рис. 11.6): //Выводим информацию на экран
WScript.Echo(SList);
Рис. 11.6. Список всех пользователей заданной группы
Листинг 11.7. Вывод на экран имен всех пользователей заданной группы
/********************************************************************/
/* Имя: ListUsers.js */
/* Язык: JScript */
/* Описание: Вывод на экран имен всех пользователей заданной группы */
/********************************************************************/
//Объявляем переменные
var
GroupObj, //Экземпляр объекта Group
SList, //Строка для вывода на экран
E, //Объект Enumerator
UserObj; //Экземпляр объекта User
//Связываемся с группой Пользователи компьютера 404_Popov
GroupObj=GetObject("WinNT://404_Popov/Пользователи,group");
//Создание объекта Enumerator для доступа к коллекции пользователей
E=new Enumerator(GroupObj.Members);
SList="Все пользователи группы Пользователи на компьютере 404_Popov:\n";
//Цикл по всем элементам коллекции пользователей
while (!E.atEnd) {
//Извлечение элемента коллекции класса User
UserObj=E.item;
//Формируем строку с именами пользователей
SList+=UserObj.Name+"\n";
//Переходим к следующему элементу коллекции
E.moveNext;
}
//Вывод информации на экран
WScript.Echo(SList);
/*************
Конец *********************************************/
Список всех групп, в которые входит пользователь
В сценарии 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
Поделиться с друзьями: