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

Здесь есть возможность читать онлайн «Андрей Попов - Windows Script Host для Windows 2000/XP» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Санкт-Петербург, Год выпуска: 2004, ISBN: 2004, Издательство: БХВ-Петербург, Жанр: Программирование, ОС и Сети, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Windows Script Host для Windows 2000/XP: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Windows Script Host для Windows 2000/XP»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В книге описывается сервер сценариев Windows Script Host (WSH) версии 5.6, который является одним из стандартных компонентов Windows ХР, а также может быть установлен в более ранних версиях Windows. Приводятся сценарии на языках VBScript и JScript, иллюстрирующие применение стандартных объектов WSH 5.6, включая создание из сценариев дочерних процессов и запуск сценариев на удаленных компьютерах. В качестве более сложных примеров рассматриваются сценарии, работающие с базами данных, управляющие приложениями Microsoft Office, организующие графический пользовательский интерфейс, использующие технологии ADSI (Active Directory Service Interface) и WMI (Windows Management Instrumentation) для решения задач администрирования. Освещены вопросы практической работы с XML-файлами и создания СОМ-объектов. Особое внимание уделяется вопросам безопасности при работе со сценариями, приводятся конкретные примеры настроек политик безопасности. К книге прилагается дискета с исходными текстами большинства примеров.

Windows Script Host для Windows 2000/XP — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Windows Script Host для Windows 2000/XP», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Первое, что необходимо сделать в сценарии — подключиться к службе Windows Management service, т.е. создать корневой элемент WMI, который содержит в себе все остальные.

Для этого в качестве параметра функции GetObject()указывается " winMgmts:"; в нашем примере мы соединяемся с WMI внутри блока try, что позволяет обработать возможные исключительные ситуации:

try {

//Соединяемся с WMI

WMI=GetObject("winMgmts:");

} catch (e) {

//Обрабатываем возможные ошибки

if (е != 0) {

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

Mess="Ошибка при соединении с WMI";

WshShell.Popup(Mess, 0, "Запущенные процессы", vbCritical);

//Выходим из сценария

WScript.Quit();

}

}

Запущенным процессам соответствует класс Processсхемы Win32. Коллекция всех процессов создается с помощью выполнения следующего SQL-запроса:

SELECT * FROM Win32 Process

Таким образом, можно сказать, что класс Win32_Processявляется аналогом таблицы базы данных; сам запрос выполняется с помощью метода ExecQuery():

Processes=new Enumerator(WMI.ExecQuery("SELECT * FROM Win32_Process"));

После создания коллекции мы просматриваем в цикле whileвсе ее элементы, каждый из которых соответствует одному процессу, и добавляем имя процесса, хранящееся в свойстве Name, к переменной SList:

//Инициализируем строку SList

SList="Запущенные процессы\n\n";

//Цикл по всем элементам коллекции

while (!Processes.atEnd()) {

//Извлекаем текущий элемент коллекции (запущенный процесс)

Process=Processes.item();

//Формируем строку с именами процессов

SList+=Process.Name+"\n";

//Переходим к следующему элементу коллекции

Processes.moveNext();

}

После выхода из цикла переменная SInfoвыводится на экран с помощью метода Echo()объекта WScript:

WScript.Echo(SInfo);

Полностью текст сценария ListProcesses.js приведен в листинге 11.21.

Листинг 11.21. Вывод на экран списка всех запущенных процессов

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

/* Имя: ListProcesses.js */

/* Язык: JScript */

/* Описание: Вывод на экран списка всех запущенных на локальной */

/* рабочей станции процессов */

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

var

WMI, //Экземпляр WMI

Processes, //Коллекция процессов

Process, //Экземпляр коллекции

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

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

var vbCritical=16;

try {

//Соединяемся с WMI

WMI=GetObject("winMgmts:");

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

if (e != 0) {

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

Mess="Ошибка при соединении с WMI";

WshShell.Popup(Mess,0,"Запущенные процессы",vbCritical);

//Выходим из сценария

WScript.Quit();

}

}

//Создаем коллекцию всех запущенных процессов

Processes=new Enumerator(WMI.ExecQuery("SELECT * FROM Win32_Process"));

//Инициализируем строку SList

SList="Запущенные процессы\n\n";

//Цикл по всем элементам коллекции

while (!Processes.atEnd()) {

//Извлекаем текущий элемент коллекции (запущенный процесс)

Process=Processes.item();

//Формируем строку с именами процессов

SList+=Process.Name+"\n";

//Переходим к следующему элементу коллекции

Processes.moveNext();

}

//Выводим информацию на экран

WScript.Echo(SList);

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

Закрытие всех экземпляров запущенного приложения

WMI позволит нам закрывать сразу все экземпляры какого-либо запущенного приложения.

В сценарии KillNotepads.js мы будем закрывать все копии Блокнота (Notepad.exe). Как и в предыдущем примере, сначала мы соединяемся с WMI внутри блока tryконструкции try…catch:

try {

//Соединяемся с WMI

WMI=GetObject("winMgmts:");

} catch (e) {

//Обрабатываем возможные ошибки

if (e != 0) {

//Выводим сообщение об ошибке Mess="Ошибка при соединении с WMI";

WshShell.Popup(Mess, 0, "Закрытие всех Блокнотов", vbCritical);

//Выходим из сценария

WScript.Quit();

}

}

Далее нам нужно получить коллекцию всех процессов с именем "Notepad.exe". Для этого мы выполняем соответствующий SQL-запрос, текст которого предварительно заносится в переменную SQuery:

//Формируем текст запроса

SQuery="SELECT * FROM Wln32_Process WHERE Name='Notepad.exe'"

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Windows Script Host для Windows 2000/XP»

Представляем Вашему вниманию похожие книги на «Windows Script Host для Windows 2000/XP» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Windows Script Host для Windows 2000/XP»

Обсуждение, отзывы о книге «Windows Script Host для Windows 2000/XP» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x