Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

В листинге 11.7 приведен сценарий ListUsers.js, в котором формируется список всех пользователей, входящих в группу "Пользователи" на компьютере 404_Popov.

Для связывания с группой "Пользователи" рабочей станции 404_Popov создается объект

GroupObj
; коллекция пользователей этой группы формируется с помощью метода
Members
объекта
Group
:

//Связываемся с группой Пользователи компьютера 404_Popov

GroupObj=GetObject("WinNT://404_Ророv/Пользователи,group");

//Создание
объекта 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
.

Поделиться:
Популярные книги

Кодекс Охотника. Книга XVIII

Винокуров Юрий
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVIII

Гримуар темного лорда IX

Грехов Тимофей
9. Гримуар темного лорда
Фантастика:
попаданцы
альтернативная история
аниме
фэнтези
5.00
рейтинг книги
Гримуар темного лорда IX

Эпоха Опустошителя. Том I

Павлов Вел
1. Вечное Ристалище
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эпоха Опустошителя. Том I

Инженер Петра Великого

Гросов Виктор
1. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Инженер Петра Великого

Древесный маг Орловского княжества 4

Павлов Игорь Васильевич
4. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 4

Хозяин Теней 7

Петров Максим Николаевич
7. Безбожник
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Хозяин Теней 7

Курс 1. Сентябрь

Фокс Гарри
1. Маркатис
Фантастика:
аниме
фэнтези
сказочная фантастика
5.00
рейтинг книги
Курс 1. Сентябрь

Мастер 11

Чащин Валерий
11. Мастер
Фантастика:
боевая фантастика
попаданцы
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Мастер 11

Найденыш

Шмаков Алексей Семенович
2. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Найденыш

Палач

Зайцев Сергей Григорьевич
4. Викс
Фантастика:
фэнтези
7.27
рейтинг книги
Палач

Кодекс Императора IV

Сапфир Олег
4. Кодекс Императора
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Императора IV

Новые горизонты

Лисина Александра
5. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Новые горизонты

Дракон

Бубела Олег Николаевич
5. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.31
рейтинг книги
Дракон

Цикл "Идеальный мир для Лекаря". Компиляция. Книги 1-30

Сапфир Олег
Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Цикл Идеальный мир для Лекаря. Компиляция. Книги 1-30