Принцип формирования списка всех групп рабочей станции остается тем же, что и для рассмотренного выше списка всех доступных доменов локальной сети, однако первоначальное связывание нужно производить не с корневым объектом класса Namespace
, а с нужным объектом класса Computer
.
В приведенном в листинге 11.6 сценарии ListAllGroups.js для связывания с компьютером 404_Popov мы создаем объект-контейнер ComputerObj
, в котором содержатся все объекты рабочей станции 404_Popov:
//Связываемся с компьютером 404_Popov
ComputerObj = GetObject("WinNT://404_Popov");
Затем в сценарии создается объект Enumerator
для доступа к элементам коллекции ComputerObj
и инициализируется переменная SList
, в которой будет храниться список всех локальных групп рабочей станции:
//Создание объекта Enumerator для доступа к коллекции ComputerObj
E=new Enumerator(ComputerObj);
SList="Ha компьютере 404_Popov созданы группы:\n";
После этого в цикле while
из коллекции ComputerObj
выбираются лишь объекты класса Group
, т.е. те объекты, у которых в поле Class
записана строка "Group
"; в SList
заносятся названия групп из поля Name
:
while (!E.atEnd()) {
//Извлекаем текущий элемент коллекции
GroupObj=E.item();
//Выделение объектов класса Group
if (GroupObj.Class == "Group")
//Формируем строку с именами групп
SList+=GroupObj.Name+"\n";
//Переход к следующему элементу коллекции
E.moveNext();
}
Рис. 11.5. Список всех локальных групп, определенных на рабочей станции
После окончания цикла сформированная строка выводится на экран (см. рис. 11.5):
//Выводим информацию на экран
WScript.Echo(SList);
Листинг 11.6. Вывод на экран имен всех локальных групп заданной рабочей станции
/********************************************************************/
/* Имя: ListAllGroups.js */
/* Язык: JScript */
/* Описание: Вывод на экран имен всех групп заданного компьютера */
/********************************************************************/
//Объявляем переменные
var
ComputerObj, //Экземпляр объекта Computer
E, //Объект Enumerator
SList; //Строка для вывода на экран
//Связываемся с компьютером 404_Popov
ComputerObj = GetObject("WinNT://404_Popov");
//Создание объекта Enumerator для доступа к коллекции ComputerObj
E=new Enumerator(ComputerObj);
SList="На компьютере 404_Popov созданы группы:\n";
//Цикл по всем элементам коллекции объектов компьютера
while (!E.atEnd()) {
//Извлекаем текущий элемент коллекции
GroupObj=E.item();
//Выделение объекты класса Group
if (GroupObj.Class == "Group")
//Формируем строку с именами групп
SList+=GroupObj.Name+"\n";
//Переход к следующему элементу коллекции
E.moveNext();
}
//Выводим информацию на экран
WScript.Echo(SList);
/************* Конец *********************************************/
Комментариев нет:
Отправить комментарий