Arial Century Courier Georgia Tahoma Verdana Times New Roman - +
Замечание
В сценариях, написанных на языке VBScript, можно непосредственно использовать именованные константы типа
vbOkCancel
без предварительного их объявления. Для того чтобы использовать такие константы в JScript-сценариях, их нужно предварительно объявить как переменные и присвоить нужные значения (например,
var vbOkCancel=1;
). Естественно, в любых сценариях вместо имен констант можно использовать их числовые значения.
В методе
Popup
можно комбинировать значения параметра, приведенные в табл. 1.10. Например, в результате выполнения следующего сценария:
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.Popup("Копирование завершено успешно", 5, "Ура",65);
на экран будет выведено информационное окно, показанное на рис. 1.11, которое автоматически закроется через 5 секунд.
Рис. 1.11. Информационное окно, созданное методом
Popup
Метод Popup возвращает целое значение, с помощью которого можно узнать, какая именно кнопка была нажата для выхода (табл. 1.11).
Таблица 1.11. Возвращаемые методом Popup
значения
Значение Константа Visual Basic Описание – 1 Пользователь не нажал ни на одну из кнопок в течение времени, заданного параметром nSecToWait
1 vbOk
Нажата кнопка OK 2 vbCancel
Нажата кнопка Отмена (Cancel) 3 vbAbort
Нажата кнопка Стоп (Abort) 4 vbRetry
Нажата кнопка Повтор (Retry) 5 vbIgnore
Нажата кнопка Пропустить (Ignore) 6 vbYes
Нажата кнопка Да (Yes) 7 vbNo
Нажата кнопка Нет (No)
Примеры вывода информации с помощью метода
Popup
представлены в
главе 2 (см. листинги 2.13 и 2.14).
Если параметр strName
оканчивается символами
\\
, то этот метод удаляет ключ целиком (вместе со всеми параметрами внутри его), в противном случае удаляется только один заданный параметр. Параметр
strName
должен начинаться с одного из следующих корневых ключей (табл. 1.12).
Таблица 1.12. Названия ключей
Краткое название Длинное название HCKU
HKEY_CURRENT_USER
HKLM
HKEY_LOCAL_MACHINE
HKCR
HKEY_CLASSES_ROOT
HKEY_USERS
HKEY_CURRENT_CONFIG
Пример, иллюстрирующий применение метода
RegDelete
, приведен в
главе 2 (см. листинги 2.45 и 2.46).
С помощью этого метода можно прочитать следующие типы данных:
REG_SZ
,
REG_EXPAND_SZ
,
REG_DWORD
,
REG_BINARY
и
REG_MULTI_SZ
. Если в реестре содержатся данные других типов, то метод
RegRead
вернет значение
DISP_E_TYPEMISMATCH
.
Если параметр strName
оканчивается символами
\\
, то этот метод считывает значение по умолчанию для раздела (если оно установлено), в противном случае читается значение параметра.
В следующем примере на экран выводятся считанные из реестра с помощью метода
RegRead
значение параметра и значение по умолчанию для раздела реестра (листинг 1.17).
Листинг 1.17. Чтение значений параметра и раздела системного реестра
/********************************************************************/
/* Имя: RegRead.js */
/* Язык: JScript */
/* Описание: Чтение значений параметра и раздела системного реестра */
/********************************************************************/
var WS,s;
//Создаем объект WshShell
WS = WScript.CreateObject("WScript.Shell");
s="Значение параметра\n";
s+="HKCU\\Control Panel\\Keyboard\\KeyboardSpeed = ";
//Читаем значение параметра реестра
s+=WS.RegRead("HKCU\\Control Panel\\Keyboard\\KeyboardSpeed")+"\n\n";
s+="Значение по умолчанию для раздела\n";
s+="HKCU\\Control Panel\\Keyboard\\ = ";
//Читаем значение по умолчанию для раздела реестра
s+=WS.RegRead("HKCU\\Control Panel\\Keyboard\\");
//Вывод на экран сформированной строки
WScript.Echo(s);
/************* Конец ***********************************************/
Если параметр strName
оканчивается символами
\\
, то этот метод записывает раздел; если такого раздела нет, он будет создан. Если в конце
strName
отсутствуют символы
\\
, то производится запись указанного параметра в нужный раздел; если такого параметра нет, он будет создан с указанным именем и значением.
Параметр anyValue
метода задает значение, которое нужно записать в заданный параметром strName
параметр или раздел реестра. Необязательный параметр strType
определяет тип записываемого значения. В качестве strType
можно указывать "
REG_SZ
", "
REG_EXPAND_SZ
", "
REG_DWORD
" и "
REG_BINARY
". Если в качестве параметра
strType
передается другое значение, то метод
RegWrite
вернет значение
E_INVALIDARG
.