Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ОС (Lite) - 3 Семестр / Лекции / Сервер сценариев Windows

.doc
Скачиваний:
25
Добавлен:
17.04.2015
Размер:
71.17 Кб
Скачать

3

Сервер сценариев Windows (WSH)

Сервер сценариев Windows (Windows Scripting Host, WSH) не зависит от языка сценария и устанавливается в системах Windows 98, Windows 2000 и Windows XP как стандартное средство. Компания Microsoft разработала и под­держивает ядро сценариев как для Visual Basic, так и для JavaScript.

Назначение сервера сценариев

Сервер сценариев позволяет применять в операционных системах Windows простые мощные и гибкие сценарии.

Объектная модель Windows Script Host

Как и все в современных операционных системах Microsoft, WSH является объектно-ориентированным средством. Объектная модель Windows Script Host состоит из 14 объектов. Корневым объектом является WScript.

Для доступа к реестру наибольший интерес вызывает объект WshShell, который будет обсуждаться в следующем разделе.

Объект WshShell

Обеспечивает доступ к собственной оболочке Windows. Объект WshShell является дочерним объектом объекта WScript и для того, чтобы создать объект WshShell необходимо использовать метод CreateScript объекта

WScript (т.е. WScript.CreateObject("WScript.Shell")).

Метод RegRead

Метод RegRead возвращает значение ключа или имя значимого элемента реестра.

В методе RegRead необходимо придерживаться принятых аббревиатур корневого ключа. В табл.1 представлены пять допустимых корневых ключей.

Табл.1 Аббервиатуры имен корневых ключей реестра

Аббревиатура

Имя корневого ключа

HKEY_CURRENT_USER HKCU

HKEY_LOCAL_MACHINE HKLM

HKEY_CLASSES_ROOT HKCR

HKEY_USERS HKEY_USERS

HKEY_CURRENT_CONFIG HKEY_CURRENT_CONFIG

Метод RegWrite

  • Метод RegWrite создает новый ключ, добавляет еще один параметр в существующий ключ и присваивает ему значение или изменяет имя существующего значимого элемента.

Метод RegDelete

  • Метод RegDelete используется для удаления ключа реестра или одного из его значимых элементов из реестра.

JScript-сценарий для изменения системного реестра

Этот программный код создает ключ реестра HKEY_CURRENT_USER\Software\MyCoolSoftware,

устанавливает значение его элемента (по умолчанию) ((Default)) (типа данных REG_BINARY) равным 1, затем под этим ключом создает еще один элемент со значением типа REG_SZ и присваивает ему строковое значение "Это всего лишь тест!".

Пример

// Установка переменных

var vbOKCancel = 1;

var vbInformation = 64;

var vbCancel = 2;

var result;

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

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

{

// Выдача приглашающего сообщения пользователю

result = WshShell.Popup("Создать новый параметр реестра?",

0,

"Доступ к реестру с использованием JScript",

vbOKCancel + vbInformation);

if (result != vbCancel)

{

WshShell.RegWrite ("HKCU\\Software\\MyCoolSoftware\\", 1, "REG_BINARY");

WshShell.RegWrite ("HKCU\\Software\\MyCoolSoftware\\MySuperProgram";

"Это всего лишь тест!", "REG_SZ");

var bКеу = WshShell.RegRead ("HKCU\\Software\\MyCoo lSoftWare\\");

WScript.Echo (WshShell.RegRead ("HKCU\\ Software\\MyCoolSoftware\\MySuperProgram"));

}

// Приглашение пользователю

result = WshShell.Popup("Удалить только что созданный параметр?",

0,

"Доступ к реестру с использованием JScript",

vbOKCancel + vbInformation);

if (result != vbCancel)

{

WshShell.RegDelete

("HKCU\\Software\\MyCoolSoftware\\MySuperProgram");

WshShell.RegDelete ("HKCU\\Software\\MyCoolSoftware\\");

}

}

Для проверки функционирования этого сценария введите в текстовом редакторе (например, в Блокноте) программный код, приведенный и данном листинге, и сохраните полученный файл с расширением .js. Если вы дважды щелкните мышью по этому файлу, запустится сервер WSH и выполнит данный сценарий.

Соседние файлы в папке Лекции