NameSpaceObj, //Корневой объект Namespace
DomObj, //Экземпляр объекта Domain
E, //Объект Enumerator
SList; //Строка для вывода на экран
//Связываемся с корневым объектом Namespace
NameSpaceObj = GetObject('WinNT:');
//Устанавливаем фильтр для выделения объектов-доменов
NameSpaceObj.Filter = Array('domain');
//Создаем объект Enumerator для доступа к коллекции NameSpaceObj
E=new Enumerator(NameSpaceObj);
List='Все доступные домены в сети:
';
//Цикл по всем элементам коллекции доменов
while (!E.atEnd()) {
//Извлекаем текущий элемент коллекции (объект класса Domain)
DomObj=E.item();
//Формируем строку с именами доменов
List+=DomObj.Name+'
';
//Переходим к следующему элементу коллекции
E.moveNext();
}
//Вывод информацию на экран
WScript.Echo(List);
/************* Конец *********************************************/
Создание пользователя и группы на рабочей станции
В сценарии AddUser.js, который приведен в листинге 11.2, для создания нового пользователя на рабочей станции выполняются следующие шаги. Во-первых, производится связывание с нужным компьютером (в нашем примере это рабочая станция с именем 404_Popov), т.е. создается экземпляр ComputerObj
объекта Computer
:
ComputerObj = GetObject('WinNT://404_Popov');
Во-вторых, создается экземпляр UserObj
объекта User
для нового пользователя. Для этого используется метод Create()
объекта Computer
; в качестве параметров этого метода указывается имя класса 'user
' и имя создаваемого пользователя (в нашем примере это имя хранится в переменной UserStr
):
UserObj=ComputerObj.Create('user', UserStr);
Для создания пользователя или группы у вас в системе должны быть назначены права, которыми обладает администратор.
Для созданного пользователя в свойство Description
мы помещаем текст описания:
UserObj.Description='Этот пользователь создан из сценария WSH';
Для сохранения информации о новом пользователе в базе данных пользователей вызывается метод SetInfo()
объекта User
:
UserObj.SetInfo();
/********************************************************************/
/* Имя: AddUser.js */
/* Язык: JScript */
/* Описание: Создание нового пользователя компьютера */
/********************************************************************/
//Объявляем переменные
var
ComputerObj, //Экземпляр объекта Computer
UserObj, //Экземпляр объекта User
UserStr = 'XUser'; //Имя создаваемого пользователя
//Связываемся с компьютером 404_Popov
ComputerObj = GetObject('WinNT://404_Popov');
//Создаем объект класса User
UserObj=ComputerObj.Create('user',UserStr);
//Добавляем описание созданного пользователя
UserObj.Description='Этот пользователь создан из сценария WSH';
//Сохраняем информацию на компьютере
UserObj.SetInfo();
/************* Конец *********************************************/
Группа на рабочей станции создается аналогичным образом (листинг 11.3).
/********************************************************************/
/* Имя: AddGroup.js */
/* Язык: JScript */
/* Описание: Создание новой группы на компьютере */
/********************************************************************/
//Объявляем переменные
var
ComputerObj, //Экземпляр объекта Computer
GroupObj, //Экземпляр объекта Group
GroupStr = 'XGroup'; //Имя создаваемой группы
//Связываемся с компьютером 404_Popov
ComputerObj = GetObject('WinNT://404_Popov');
//Создаем объект класса Group
GroupObj=DomainObj.Create('group', GroupStr);
//Сохраняем информацию на компьютере
GroupObj.SetInfo();
/************* Конец *********************************************/
Вывод информации о пользователе и смена его пароля
В листинге 11.4 приведен сценарий UserInfo.js, в котором выводится на экран информация о созданном в сценарии AddUser.js пользователе XUser (рис. 11.2).