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.
/*******************************************************************/
/* Имя: 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 реализация
В WBEM информация интерпретируется в рамках модели Common Information Model (CIM). CIM представляет собой стандартную схему именования для физических и логических компонентов компьютера. К любому элементу CIM можно обратиться с помощью объектно-ориентированной терминологии:
? класс CIM — это шаблон управляемых элементов, имеющий свойства и методы;
? объект CIM — это экземпляр класса, представляющий базовый компонент системы;
? схема (schema) — это совокупность классов, описывающая систему в целом.
В Windows используются две схемы: CIM (соответствует спецификации CIM 2.0) и Win32 (расширяет спецификацию CIM 2.0).
Объекты WMI также могут использоваться и в Windows 9x/ME/NT, для этого нужно скачать с сервера Microsoft(http://www.microsoft.com/downloads/release.asp?ReleaseID=18490).
Здесь мы не будем рассматривать классы, свойства и методы, которые поддерживает WMI, т.к. даже поверхностное ознакомление с ними потребовало бы отдельной книги, а лишь приведем несколько простых примеров сценариев, из которых станет ясно, каким образом происходит соединение с WMI, запрос нужной информации и использование объектов WMI.
Доступ к свойствам файла
Первый пример, который мы рассмотрим, будет посвящен работе с файловой системой. Мы напишем сценарий FileInfoWMI.js, в котором с помощью WMI будет формироваться диалоговое окно с информацией о файле C:oot.ini (рис. 11.28).
Рис. 11.28. Свойства файла C:oot.ini
Напомним, что из сценария к файловой системе можно получить доступ с помощью стандартного