RegRead Method

Switch View :
ScriptFree
Windows Script Host
RegRead Method

Returns the value of a key or value-name from the registry.


                      object.RegRead(strName) 
Arguments

object

WshShell object.

strName

String value indicating the key or value-name whose value you want.

Remarks

The RegRead method returns values of the following five types.

Type

Description

In the Form of

REG_SZ

A string

A string

REG_DWORD

A number

An integer

REG_BINARY

A binary value

A VBArray of integers

REG_EXPAND_SZ

An expandable string (e.g., "%windir%\\calc.exe")

A string

REG_MULTI_SZ

An array of strings

A VBArray of strings

You can specify a key-name by ending strName with a final backslash. Do not include a final backslash to specify a value-name. A value entry has three parts: its name, its data type, and its value. When you specify a key-name (as opposed to a value-name), RegRead returns the default value. To read a key's default value, specify the name of the key itself. Fully qualified key-names and value-names begin with a root key. You may use abbreviated versions of root key names with the RegRead method. The five possible root keys are listed in the following table.

Root key Name

Abbreviation

HKEY_CURRENT_USER

HKCU

HKEY_LOCAL_MACHINE

HKLM

HKEY_CLASSES_ROOT

HKCR

HKEY_USERS

HKEY_USERS

HKEY_CURRENT_CONFIG

HKEY_CURRENT_CONFIG

Example

The following code creates a key and two values, reads them, and deletes them.

VBScript
Dim WshShell, bKey
Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.RegWrite "HKCU\Software\ACME\FortuneTeller\", 1, "REG_BINARY"
WshShell.RegWrite "HKCU\Software\ACME\FortuneTeller\MindReader", "Goocher!", "REG_SZ"

bKey = WshShell.RegRead("HKCU\Software\ACME\FortuneTeller\")
WScript.Echo WshShell.RegRead("HKCU\Software\ACME\FortuneTeller\MindReader")

WshShell.RegDelete "HKCU\Software\ACME\FortuneTeller\MindReader"
WshShell.RegDelete "HKCU\Software\ACME\FortuneTeller\"
WshShell.RegDelete "HKCU\Software\ACME\"
JScript
var WshShell = WScript.CreateObject ("WScript.Shell");

WshShell.RegWrite ("HKCU\\Software\\ACME\\FortuneTeller\\", 1, "REG_BINARY");
WshShell.RegWrite ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader", "Goocher!", "REG_SZ");

var bKey =    WshShell.RegRead ("HKCU\\Software\\ACME\\FortuneTeller\\");
WScript.Echo (WshShell.RegRead ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader"));

WshShell.RegDelete ("HKCU\\Software\\ACME\\FortuneTeller\\MindReader");
WshShell.RegDelete ("HKCU\\Software\\ACME\\FortuneTeller\\");
WshShell.RegDelete ("HKCU\\Software\\ACME\\");

Applies To:

See Also

Reference

Community Content

Victor S from Sogeti
RE: Names with backslashes
You've probably figured it out by now, but thought I'd leave a response for anyone else who comes across this.  WScript's Reg methods do not support backslashes in key or value names.  Instead, you can use WMI's StdRegProv.  For more information, see Microsoft KB 281309.

WitekM
Names with backslashes
Could anyone let me know how to read a value HKLM\HARDWARE\DEVICEMAP\SERIALCOMM\Device\Serial0, where the value-name is "\Device\Serial0" using jscript. Cheers.