Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программное обеспечение » Windows Script Host для Windows 2000/XP - Андрей Попов

Windows Script Host для Windows 2000/XP - Андрей Попов

Читать онлайн Windows Script Host для Windows 2000/XP - Андрей Попов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 131 132 133 134 135 136 137 138 139 ... 175
Перейти на страницу:

if (!IsError) { //Р’СЃРµ РІ РїРѕСЂСЏРґРєРµ

 Mess="Пользователь."+UserStr+" удален";

 WshShell.Popup(Mess, 0, "Удаление пользователя", vbInformation);

}

Рис. 11.4. Сообщение об удачном удалении пользователя

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

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

/* РРјСЏ: DelUserAndGroup.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                    */

/* Описание: Удаление пользователя и группы компьютера              */

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

//Объявляем переменные

var

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

В UserStr = "XUser",В В  //РРјСЏ удаляемого пользователя

В GroupStr = "XGroup", //РРјСЏ удаляемой РіСЂСѓРїРїС‹

 WshShell;            //Объект WshShell

//Рнициализируем константы для диалоговых РѕРєРѕРЅ

var vbCritical=16,vbInformation=64;

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

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

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

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

/*************  Удаление пользователя  ***********************/

IsError=false;

try {

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

В ComputerObj.Delete("user", UserStr);

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

В if (e != 0) {

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

В  IsError=true;

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

  WshShell.Popup(Mess,0,"Удаление пользователя",vbCritical);

В }

}

if (!IsError)В  {

В //Р’СЃРµ РІ РїРѕСЂСЏРґРєРµ

 Mess="Пользователь "+UserStr+" удален";

 WshShell.Popup(Mess,0,"Удаление пользователя",vbInformation);

}

/*************  Удаление группы  ***********************/ 

IsError=false;

tryВ  {

 //Удаляем группу

В ComputerObj.Delete("group", GroupStr);

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

В if (e != 0) {

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

В  IsError=true;

  Mess="Ошибка при удалении группы "+GroupStr+"nКод ошибки: " + e.number+"nОписание: " + e.description;

  WshShell.Popup(Mess,0,"Удаление группы",vbCritical);

В }

}

if (!IsError)В  {

В //Р’СЃРµ РІ РїРѕСЂСЏРґРєРµ

 Mess="Группа "+GroupStr+" удалена";

 WshShell.Popup(Mess,0,"Удаление группы",vbInformation);

}

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

Список всех групп на рабочей станции

Принцип формирования списка всех групп рабочей станции остается тем же, что и для рассмотренного выше списка всех доступных доменов локальной сети, однако первоначальное связывание нужно производить не с корневым объектом класса 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);

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

1 ... 131 132 133 134 135 136 137 138 139 ... 175
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Windows Script Host для Windows 2000/XP - Андрей Попов.
Комментарии