Рис. 11.2. Информация о локальном пользователе XUser

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

//Связываемся с пользователем XUser компьютера 404_Popov

UserObj=GetObject('WinNT://404_Popov/XUser, user');

//Формируем строку с информацией о пользователе

SInfо='Информация о пользователе XUser: ';

SInfо+='Имя: '+UserObj.Name+' ';

SInfо+='Описание: '+UserObj.Description+' ';

//Выводим сформированную строку на экран

WScript.Echo(SInfo);

После этого в сценарии выдается запрос на изменение пароля пользователя XUser. Для этого мы используем метод Popup() объекта WshShell:

//Создаем объект WshShell

WshShell=WScript.CreateObject('WScript.Shell');

//Запрос на изменение пароля

Res=WshShell.Popup('Изменить пароль у XUser?', 0, 'Администрирование пользователей', vbQuestion+vbYesNo);

В случае утвердительного ответа пароль изменяется с помощью метода SetPassword() объекта User, после чего все произведенные изменения сохраняются на рабочей станции с помощью метода SetInfo():

if (Res==vbYes) {

 //Нажата кнопка 'Да'

 //Устанавливаем новый пароль

 UserObj.SetPassword('NewPassword');

 //Сохраняем сделанные изменения

 UserObj.SetInfо();

 WScript.Echo('Пароль был изменен');

}

Листинг 11.4. Вывод информации о пользователе компьютера и смена его пароля

/********************************************************************/

/* Имя: UserInfo.js                                                 */

/* Язык: JScript                                                    */

/* Описание: Вывод информации о пользователе компьютера и смена     */

/*           его пароля                                             */

/********************************************************************/

var

 UserObj,   //Экземпляр объекта User

 Res,       //Результат нажатия кнопки в диалоговом окне

 SPassword, //Строка с новым паролем

 SInfo;     //Строка для вывода на экран

//Инициализируем константы для диалогового окна

var vbYesNo=4,vbQuestion=32,vbYes=6;

//Связываемся с пользователем XUser компьютера 404_Popov

UserObj=GetObject('WinNT://404_Popov/XUser,user');

//Формируем строку с информацией о пользователе

SInfo='Информация о пользователе XUser: ';

SInfo+='Имя: '+UserObj.Name+' ';

SInfo+='Описание: '+UserObj.Description+' ';

//Выводим сформированную строку на экран

WScript.Echo(SInfo);

//Создаем объект WshShell

WshShell=WScript.CreateObject('WScript.Shell');

//Запрос на изменение пароля

Res=WshShell.Popup('Изменить пароль у XUser?', 0,

 'Администрирование пользователей', vbQuestion+vbYesNo);

if (Res==vbYes) { //Нажата кнопка Да

 //Устанавливаем новый пароль

 UserObj.SetPassword('NewPassword');

 //Сохраняем сделанные изменения

 UserObj.SetInfo();

 WScript.Echo('Пароль был изменен');

} else WScript.Echo('Вы отказались от изменения пароля');

/*************  Конец *********************************************/

Удаление пользователя и группы на рабочей станции  

Для удаления созданных с помощью сценариев AddUser.js и AddGroup.js пользователя XUser и группы XGroup мы создадим сценарий DelUserAndGroup.js, который представлен в листинге 11.5.

Замечание

Для удаления пользователя или группы у вас в системе должны быть назначены права, которыми обладает администратор.

В принципе, удалить пользователя и группу так же просто, как и создать — нужно связаться с объектом Computer:

ComputerObj = GetObject('WinNT://404_Popov');

и вызвать метод Delete(), указав в качестве первого параметра класс объекта, который мы хотим удалить, и в качестве второго параметра — имя этого объекта:

//Удаляем пользователя

ComputerObj.Delete('user', UserStr);

Однако здесь могут возникнуть ошибки (например, мы не запускали предварительно сценарий AddUser.js и у нас на компьютере не зарегистрирован пользователь, которого мы хотим удалить). Поэтому в сценарии DelUserAndGroup.js предусмотрена обработка исключительных ситуаций с помощью конструкции try…catch:

IsError=false;

try {

 //Удаляем пользователя

 ComputerObj.Delete('user', UserStr);

} catch (e) { //Обрабатываем возможные ошибки

 if (e != 0) {

  //Выводим сообщение об ошибке

 IsError=true;

  Mess='Ошибка при удалении пользователя '+UserStr+' Код ошибки: ' + е.number +' Описание: '+е.description;

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату