Insider Power Techniques for Microsoft Windows XP [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Insider Power Techniques for Microsoft Windows XP [Electronic resources] - نسخه متنی

Paul McFedries

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
توضیحات
افزودن یادداشت جدید




Chapter 2, “Getting the Most Out of the Registry,” illustrates that the registry is one of Windows XP’s most crucial data structures. However, the registry isn’t a tool wielded only by Windows XP. Most 32-bit applications make use of the registry as a place to store setup options, customization values selected by the user, and much more. Interestingly, your scripts can get in on the act as well. Not only can your scripts read the current value of any registry setting, but they can also use the registry as a storage area. This lets you keep track of user settings, recently used files, and any other configuration data that you’d like to save between sessions. This section shows you how to use the WshShell object to manipulate the registry from within your scripts.


Reading Registry Keys or Values


To read any value from the registry, use WshShell’s RegRead method:

RegRead(strName)









strName


The name of the registry value or key that you want to read.


If strName ends with a backslash (\), RegRead returns the default value for the key; otherwise, RegRead returns the data stored in the value. Note, too, that strName must begin with one of the following root key names:

























Short Name


Long Name


HKCR


HKEY_CLASSES_ROOT


HKCU


HKEY_CURRENT_USER


HKLM


HKEY_LOCAL_MACHINE


N/A


HKEY_USERS


N/A


HKEY_CURRENT_CONFIG


The following example displays the name of the registered owner of this copy of Windows XP:

Set objWshShell = WScript.CreateObject(“WScript.Shell”)
strSetting = “HKLM\SOFTWARE\Microsoft” & _
“\Windows NT\CurrentVersion\RegisteredOwner"
strRegisteredUser = objWshShell.RegRead(strSetting)
WScript.Echo strRegisteredUser


Storing Registry Keys or Values


To store a setting in the registry, use WshShell’s RegWrite method:

RegWrite strName, anyValue [, strType]















strName


The name of the registry value or key that you want to set. If strName ends with a backslash (\), RegWrite sets the default value for the key; otherwise, RegWrite sets the data for the value. strName must begin with one of the root key names detailed in the RegRead method.



anyValue


The value to be stored.



strType


The data type of the value, which must be one of the following: REG_SZ (the default), REG_EXPAND_SZ, REG_DWORD, or REG_BINARY.



The following statements create a new key named ScriptSettings in the HKEY_CURRENT_USER root:

Set objWshShell = WScript.CreateObject(“WScript.Shell”)
objWshShell.RegWrite “HKCU\ScriptSettings\", ““

The following statements create a new value named NumberOfReboots in the HKCU\ScriptSettings key, and set this value to 1:

Set objWshShell = WScript.CreateObject(“WScript.Shell”)
objWshShell.RegWrite “HKCU\ScriptSettings\NumberOfReboots", 1, _ “REG_DWORD”


Deleting Registry Keys or Values


If you no longer need to track a particular key or value setting, use the RegDelete method to remove the setting from the registry:

RegDelete (strName)









strName


The name of the registry value or key that you want to delete. If strName ends with a backslash (\), RegDelete deletes the key; otherwise, RegDelete deletes the value. strName must begin with one of the root key names detailed in the RegRead method.


To delete the NumberOfReboots value used in the previous example, you would use the following statements:

Set objWshShell = WScript.CreateObject(“WScript.Shell”)
objWshShell.RegDelete “HKCU\ScriptSettings\NumberOfReboots”

/ 126