Реестр
Реестр
Для доступа к реестру необходимо подключить объект WshShell. Для этого нужно воспользоваться следующим объявлением: Set имя_нового_объекта = WScript.CreateObject("WScript. Shell"). Объект поддерживает следующие методы.
? RegRead(путь к ветви реестра и имя параметра) — считывает из реестра значение параметра, указанного в качестве входного значения. При этом если входное значение будет завершаться косой чертой (), то будет считываться значение по умолчанию данной ветви реестра. Следует также напомнить, что путь к ветви реестра должен начинаться не с полного названия корневого раздела, а с его аббревиатуры. Например, возможны следующие аббревиатуры:
• HKCU — соответствует корневому разделу HKEY_CURRENT_USER;
• HKLM — HKEY_LOCAL_MACHINE;
• HKCR — HKEY_CLASSES_ROOT.
? RegWrite путь к ветви реестра и имя параметра, значение параметра, тип параметра — редактирует значение существующего параметра реестра или создает новый параметр. При этом для его работы необходимо три входных значения, последнее из которых является аббревиатурой типа создаваемого параметра. Возможны следующие аббревиатуры:
• REG_SZ — строковый параметр;
• REG_DWORD — параметр REG_DWORD-типа;
• REG_BINARY — параметр REG_BINARY-типа.
Как и в методе RegRead, если путь к создаваемому параметру будет заканчиваться косой чертой, то будет изменяться значение параметра (По умолчанию).
? RegDelete путь к ветви реестра и имя параметра, который мы удаляем — удаляет из реестра указанный во входящем значении параметр. При этом если входящее значение оканчивается косой чертой, то будет удалена вся ветвь.
Рассмотрим простой пример работы с данными методами. В нем будет создан параметр, а также отредактирован параметр (По умолчанию). Затем произойдет попытка считать созданные параметры, а после этого удаление сначала отдельного параметра, а потом всей ветви реестра, которая была создана ранее.
Листинг 16.1. Работа с методами для доступа к реестру
set wshshell = WScript.CreateObject("WScript.Shell")
wshshell.RegWrite "HKCUPrimer_sozdania_vetvihello_world", "BIG_WORLD", "REG_SZ"
wshshell.RegWrite "HKCUPrimer_sozdania_vetvi", "Изменяем значение параметра По умолчанию", "REG_SZ"
MsgBox wshshell. RegRead("HKCUPrimer_sozdania_vetvihello_world")
MsgBox wshshell.RegRead("HKCUPrimer_sozdania_vetvi")
wshshell.RegDelete "HKCUPrimer_sozdania_vetvihello_world"
wshshell.RegDelete "HKCUPrimer_sozdania_vetvi"