Выбрать главу

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

 //Вызываем окно запуска программ

 Shell.FileRun();

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

Блокировка рабочей станции

Заблокировать рабочую станцию Windows ХР можно с помощью вызова функции LockWorkStation() из библиотечного файла user32.dll. В листинге 11.18 приведен сценарий Lock.js, в котором происходит блокировка компьютера с помощью этой функции.

Листинг 11.18. Блокировка рабочей станции

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

/* Имя: Lock.js                                                    */

/* Язык: JScript                                                   */

/* Описание: Блокировка рабочей станции                            */

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

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

var

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

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

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

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

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

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

//Выводим запрос на блокировку рабочей станции

Res=WshShell.Popup("Заблокировать рабочую станцию?",0,

 "",vbQuestion+vbYesNo);

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

 //Блокируем рабочую станцию

 WshShell.Run("Rundll32.exe user32.dll,LockWorkStation");

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

Вызов окна выключения компьютера 

Из сценария WSH можно вызвать диалоговое окно, в котором производится выбор действия при завершении работы Windows (рис. 11.27).

Рис. 11.27. Диалоговое окно выключения компьютера

Для этого необходимо вызвать метод ShutdownWindows() объекта Shell.Application. Соответствующий пример приведен в листинге 11.19.

Листинг 11.19. Вызов окна выключения компьютера

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

/* Имя: ShutdownWindow.js                                          */

/* Язык: JScript                                                   */

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

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

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

var

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

 Shell,    //Экземпляр объекта Shell.Application

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

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

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

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

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

//Создаем объект Shell.Application

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

//Выводим запрос

Res=WshShell.Popup("Открыть окно выключения компьютера?",0,

 "Вызов стандартных диалогов Windows",vbQuestion+vbYesNo);

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

 //Вызываем окно выключения компьютера

 Shell.ShutdownWindows();

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

Использование технологии Windows Management Instrumentation (WMI)

В Windows XP/2000 ядром системы управления является технология WMI — Windows Management Instrumentation. WMI — это глобальная концепция настройки, управления и слежения за работой различных частей корпоративной компьютерной сети. В частности, используя WMI, можно из сценария WSH контролировать и изменять параметры самых разнородных физических и логических элементов компьютерной системы, в качестве которых могут выступать, например, файл на жестком диске, запущенный экземпляр приложения, системное событие, сетевой пакет или установленный в компьютере процессор. Очень важно, что при этом для доступа ко всем элементам используется единый интерфейс с помощью CIMOM — Common Information Model Object Manager — базы данных объектов, представляющих эти элементы. Это позволяет, в частности, быстро получать информацию разнообразного типа об объектах с помощью запросов на языке SQL. Другой важной особенностью WMI является то, что этот же интерфейс можно использовать для дистанционного управления компьютерами в сети (естественно, если на локальной и удаленной машине установлен WMI, а у пользователя, который выполняет удаленное администрирование, имеются соответствующие права).

Технология WMI — это созданная фирмой Microsoft реализация модели управления предприятием на базе Web (WBEM, Web-Based Enterprise Management), которая была разработана и принята рабочей группой по управлению распределенными системами (DMTF, Distributed Management Task Force), при участии таких компаний, как ВМС Software, Cisco Systems, Compaq Computer, Intel и Microsoft. Задачей WBEM была разработка стандартного набора интерфейсов для управления информационной средой предприятия.