Friday, January 18, 2013

SUPPORT REGISTRY


http://msdn.microsoft.com/en-us/library/ms725505(v=vs.85).aspx

Structure of the Registry

16 out of 18 rated this helpful - Rate this topicThe registry is a hierarchical database that contains data that is critical for the operation of Windows and the applications and services that run on Windows. The data is structured in a tree format. Each node in the tree is called a key. Each key can contain both subkeys and data entries called values. Sometimes, the presence of a key is all the data that an application requires; other times, an application opens a key and uses the values associated with the key. A key can have any number of values, and the values can be in any form. For more information, see Registry Value Types and Registry Element Size Limits.Each key has a name consisting of one or more printable characters. Key names are not case sensitive. Key names cannot include the backslash character (\), but any other printable character can be used. Value names and data can include the backslash character.The name of each subkey is unique with respect to the key that is immediately above it in the hierarchy. Key names are not localized into other languages, although values may be.The following illustration is an example registry key structure as displayed by the Registry Editor.Each of the trees under My Computer is a key. The HKEY_LOCAL_MACHINE key has the following subkeys: HARDWARE,SAM, SECURITY, SOFTWARE, and SYSTEM. Each of these keys in turn has subkeys. For example, the HARDWARE key has the subkeys DESCRIPTION, DEVICEMAP, and RESOURCEMAP; the DEVICEMAP key has several subkeys including VIDEO.Each value consists of a value name and its associated data, if any. MaxObjectNumber and VgaCompatible are values that contain data under the VIDEO subkey.A registry tree can be 512 levels deep. You can create up to 32 levels at a time through a single registry API call.

Related topics

Overview of the Windows Registry

http://msdn.microsoft.com/en-us/library/ms724878(v=vs.85).aspx

Writing and Deleting Registry Data

4 out of 4 rated this helpful - Rate this topicAn application can use the RegSetValueEx function to associate a value and its data with a key. For a list of the value types supported by RegSetValueEx, see Registry Value Types.To delete a value from a key, an application can use the RegDeleteValue function. To delete a key, it can use theRegDeleteKey function. A deleted key is not removed until the last handle to it has been closed. Subkeys and values cannot be created under a deleted key.It is not possible to lock a registry key during a write operation to synchronize access to the data. However, you can control access to a registry key using security attributes. For more information, see Registry Key Security and Access Rights.More than one registry operation can be performed within a single transaction. To associate a registry key with a transaction, an application can use the RegCreateKeyTransacted or RegOpenKeyTransacted function. For more information about transactions, see Kernel Transaction Manager. 
http://msdn.microsoft.com/en-us/library/ms724182(v=vs.85).aspx

Registry Key Security and Access Rights

27 out of 56 rated this helpful - Rate this topicThe Windows security model enables you to control access to registry keys. For more information about security, seeAccess-Control Model.You can specify a security descriptor for a registry key when you call the RegCreateKeyEx or RegSetKeySecurity function. If you specify NULL, the key gets a default security descriptor. The ACLs in a default security descriptor for a key are inherited from its direct parent key.To get the security descriptor of a registry key, call the RegGetKeySecurity, GetNamedSecurityInfo, or GetSecurityInfofunction.The valid access rights for registry keys include the DELETE, READ_CONTROL, WRITE_DAC, and WRITE_OWNER standard access rights. Registry keys do not support the SYNCHRONIZE standard access right.The following table lists the specific access rights for registry key objects.ValueMeaningKEY_ALL_ACCESS (0xF003F)Combines the STANDARD_RIGHTS_REQUIRED, KEY_QUERY_VALUE, KEY_SET_VALUE, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, and KEY_CREATE_LINK access rights.KEY_CREATE_LINK (0x0020)Reserved for system use.KEY_CREATE_SUB_KEY (0x0004)Required to create a subkey of a registry key.KEY_ENUMERATE_SUB_KEYS (0x0008)Required to enumerate the subkeys of a registry key.KEY_EXECUTE (0x20019)Equivalent to KEY_READ.KEY_NOTIFY (0x0010)Required to request change notifications for a registry key or for subkeys of a registry key.KEY_QUERY_VALUE (0x0001)Required to query the values of a registry key.KEY_READ (0x20019)Combines the STANDARD_RIGHTS_READ, KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, and KEY_NOTIFY values.KEY_SET_VALUE (0x0002)Required to create, delete, or set a registry value.KEY_WOW64_32KEY (0x0200)Indicates that an application on 64-bit Windows should operate on the 32-bit registry view. This flag is ignored by 32-bit Windows. For more information, see Accessing an Alternate Registry View.This flag must be combined using the OR operator with the other flags in this table that either query or access registry values.Windows 2000:  This flag is not supported.KEY_WOW64_64KEY (0x0100)Indicates that an application on 64-bit Windows should operate on the 64-bit registry view. This flag is ignored by 32-bit Windows. For more information, see Accessing an Alternate Registry View.This flag must be combined using the OR operator with the other flags in this table that either query or access registry values.Windows 2000:  This flag is not supported.KEY_WRITE (0x20006)Combines the STANDARD_RIGHTS_WRITE, KEY_SET_VALUE, and KEY_CREATE_SUB_KEY access rights. When you call the RegOpenKeyEx function, the system checks the requested access rights against the key's security descriptor. If the user does not have the correct access to the registry key, the open operation fails. If an administrator needs access to the key, the solution is to enable the SE_TAKE_OWNERSHIP_NAME privilege and open the registry key with WRITE_OWNER access. For more information, see Enabling and Disabling Privileges.You can request the ACCESS_SYSTEM_SECURITY access right to a registry key if you want to read or write the key's system access control list (SACL). For more information, see Access-Control Lists (ACLs) and SACL Access Right.To view the current access rights for a key, including the predefined keys, use the Registry Editor (Regedt32.exe). After navigating to the desired key, go to the Edit menu and select Permissions.  Send comments about this topic to Microsoft

About the Registry

7 out of 8 rated this helpful - Rate this topicThe following topics describe the registry and the functions you can call to retrieve and modify the data stored there.Structure of the RegistryRegistry Storage SpacePredefined KeysRegistry HivesCategories of DataOpening, Creating, and Closing KeysWriting and Deleting Registry DataRetrieving Data from the RegistryRegistry FilesRegistry Key Security and Access Rights32-bit and 64-bit Application Data in the RegistryRegistry Virtualization


Registry

67 out of 77 rated this helpful - Rate this topicThe registry is a system-defined database in which applications and system components store and retrieve configuration data. The data stored in the registry varies according to the version of Microsoft Windows. Applications use the registry API to retrieve, modify, or delete registry data.You should not edit registry data that does not belong to your application unless it is absolutely necessary. If there is an error in the registry, your system may not function properly. If this happens, you can restore the registry to the state it w

No comments:

Post a Comment