This library contains classes and functions for manipulation of the Windows Registry.
The Windows registry is a hierarchical database wherein nodes contain values and sub-nodes. A node is known as a key, and the values are known as, er, values. The Windows Registry Library provides a suite of classes that represent these entities and provide facilities for accessing, enumerating and modifying them:
| Namespaces | |
| namespace | winstl::registry_util | 
| Internal/implementation namespace containing shared handles. | |
| Classes | |
| class | registry_exception | 
| Root exception thrown by the Windows Registry Library.  More... | |
| class | key_not_duplicated_exception | 
| Indicates that a registry key could not be duplicated.  More... | |
| class | wrong_value_type_exception | 
| Indicates a registry value type mismatch.  More... | |
| class | access_denied_exception | 
| Indicates insufficient rights to access a registry key.  More... | |
| class | basic_reg_key | 
| Represents a registry key, and provides methods for manipulating its values and sub-keys.  More... | |
| class | basic_reg_key_sequence | 
| Presents an STL-like sequence interface over the sub-keys of a given registry key.  More... | |
| class | basic_reg_key_sequence_iterator | 
| Iterator for the basic_reg_key_sequence class.  More... | |
| struct | reg_traits | 
| Traits for accessing the correct registry functions for a given character type.  More... | |
| class | reg_blob | 
| Represents a binary registry value.  More... | |
| class | basic_reg_value | 
| Represents a registry value, providing methods for accessing the value in different types.  More... | |
| class | basic_reg_value_sequence | 
| Presents an STL-like sequence interface over the values of a given registry key.  More... | |
| class | basic_reg_value_sequence_iterator | 
| Iterator for the basic_reg_value_sequence class.  More... | |
| struct | shared_handle | 
| [IMPLEMENTATION] Non-monitoring shared registry key context  More... | |
| struct | monitored_shared_handle | 
| [IMPLEMENTATION] Monitoring shared registry key context  More... | |
| Typedefs | |
| typedef basic_reg_key< char, reg_traits< char > , processheap_allocator< char > > | reg_key_a | 
| Specialisation of the basic_reg_key template for the ANSI character type char. | |
| typedef basic_reg_key< wchar_t, reg_traits< wchar_t > , processheap_allocator < wchar_t > > | reg_key_w | 
| Specialisation of the basic_reg_key template for the Unicode character type wchar_t. | |
| typedef basic_reg_key< TCHAR, reg_traits< TCHAR > , processheap_allocator< TCHAR > > | reg_key | 
| Specialisation of the basic_reg_key template for the Win32 character type TCHAR. | |
| typedef basic_reg_key_sequence < char, reg_traits< char > , processheap_allocator< char > > | reg_key_sequence_a | 
| Specialisation of the basic_reg_key_sequence template for the ANSI character type char. | |
| typedef basic_reg_key_sequence < wchar_t, reg_traits< wchar_t > , processheap_allocator < wchar_t > > | reg_key_sequence_w | 
| Specialisation of the basic_reg_key_sequence template for the Unicode character type wchar_t. | |
| typedef basic_reg_key_sequence < TCHAR, reg_traits< TCHAR > , processheap_allocator< TCHAR > > | reg_key_sequence | 
| Specialisation of the basic_reg_key_sequence template for the Win32 character type TCHAR. | |
| typedef basic_reg_value< char, reg_traits< char > , processheap_allocator< char > > | reg_value_a | 
| Specialisation of the basic_reg_value template for the ANSI character type char. | |
| typedef basic_reg_value < wchar_t, reg_traits< wchar_t > , processheap_allocator < wchar_t > > | reg_value_w | 
| Specialisation of the basic_reg_value template for the Unicode character type wchar_t. | |
| typedef basic_reg_value< TCHAR, reg_traits< TCHAR > , processheap_allocator< TCHAR > > | reg_value | 
| Specialisation of the basic_reg_value template for the Win32 character type TCHAR. | |
| typedef basic_reg_value_sequence< char, reg_traits< char > , processheap_allocator< char > > | reg_value_sequence_a | 
| Specialisation of the basic_reg_value_sequence template for the ANSI character type char. | |
| typedef basic_reg_value_sequence < wchar_t, reg_traits< wchar_t > , processheap_allocator < wchar_t > > | reg_value_sequence_w | 
| Specialisation of the basic_reg_value_sequence template for the Unicode character type wchar_t. | |
| typedef basic_reg_value_sequence < TCHAR, reg_traits< TCHAR > , processheap_allocator< TCHAR > > | reg_value_sequence | 
| Specialisation of the basic_reg_value_sequence template for the Win32 character type TCHAR. | |
| Functions | |
| template<typename C> | |
| LONG | reg_get_string_value (HKEY hkey, C const *name, C *buffer, size_t &cchBuffer) | 
| Gets the contents of a registry key's string value into a caller-supplied buffer. | |
| template<typename C> | |
| LONG | reg_get_dword_value (HKEY hkey, C const *name, DWORD &value) | 
| Gets the contents of a registry key's DWORD value into a caller-supplied variable. | |
| template<typename C, typename T, typename A> | |
| HKEY | get_handle (basic_reg_key< C, T, A > const &key) | 
| [Shim function] Returns the corresponding registry handle of an instance of winstl::basic_reg_key basic_reg_key. | |
| Variables | |
| const size_t | CCH_REG_API_AUTO_BUFFER = 512 | 
| Number of characters in internal buffer of auto_buffer used throughout the Registry library. | |
| typedef basic_reg_key<TCHAR, reg_traits<TCHAR>, processheap_allocator<TCHAR> > reg_key | 
Specialisation of the basic_reg_key template for the Win32 character type TCHAR. 
| typedef basic_reg_key< char , reg_traits< char >, processheap_allocator< char > > reg_key_a | 
Specialisation of the basic_reg_key template for the ANSI character type char. 
| typedef basic_reg_key_sequence<TCHAR, reg_traits<TCHAR>, processheap_allocator<TCHAR> > reg_key_sequence | 
Specialisation of the basic_reg_key_sequence template for the Win32 character type TCHAR. 
| typedef basic_reg_key_sequence< char , reg_traits< char >, processheap_allocator< char > > reg_key_sequence_a | 
Specialisation of the basic_reg_key_sequence template for the ANSI character type char. 
| typedef basic_reg_key_sequence< wchar_t , reg_traits< wchar_t >, processheap_allocator< wchar_t > > reg_key_sequence_w | 
Specialisation of the basic_reg_key_sequence template for the Unicode character type wchar_t. 
| typedef basic_reg_key< wchar_t , reg_traits< wchar_t >, processheap_allocator< wchar_t > > reg_key_w | 
Specialisation of the basic_reg_key template for the Unicode character type wchar_t. 
| typedef basic_reg_value<TCHAR, reg_traits<TCHAR>, processheap_allocator<TCHAR> > reg_value | 
Specialisation of the basic_reg_value template for the Win32 character type TCHAR. 
| typedef basic_reg_value< char , reg_traits< char >, processheap_allocator< char > > reg_value_a | 
Specialisation of the basic_reg_value template for the ANSI character type char. 
| typedef basic_reg_value_sequence<TCHAR, reg_traits<TCHAR>, processheap_allocator<TCHAR> > reg_value_sequence | 
Specialisation of the basic_reg_value_sequence template for the Win32 character type TCHAR. 
| typedef basic_reg_value_sequence< char , reg_traits< char >, processheap_allocator< char > > reg_value_sequence_a | 
Specialisation of the basic_reg_value_sequence template for the ANSI character type char. 
| typedef basic_reg_value_sequence< wchar_t , reg_traits< wchar_t >, processheap_allocator< wchar_t > > reg_value_sequence_w | 
Specialisation of the basic_reg_value_sequence template for the Unicode character type wchar_t. 
| typedef basic_reg_value< wchar_t , reg_traits< wchar_t >, processheap_allocator< wchar_t > > reg_value_w | 
Specialisation of the basic_reg_value template for the Unicode character type wchar_t. 
| HKEY winstl::get_handle | ( | basic_reg_key< C, T, A > const & | key | ) |  [inline] | 
[Shim function] Returns the corresponding registry handle of an instance of winstl::basic_reg_key basic_reg_key.
| key | The basic_reg_key instance. | 
References basic_reg_key::get_key_handle().
| LONG winstl::reg_get_dword_value | ( | HKEY | hkey, | |
| C const * | name, | |||
| DWORD & | value | |||
| ) |  [inline] | 
Gets the contents of a registry key's DWORD value into a caller-supplied variable.
| hkey | [in]Handle of the key whose values will be retrieved | |
| name | [in]The name of the value. May beNULLor the empty string to access the key's default value | |
| value | [out]The value's value. | 
| ERROR_SUCCESS (==0) | The function completed successfully | |
| any other value | The function failed, and the error code indicates why | 
value is unchanged. | LONG winstl::reg_get_string_value | ( | HKEY | hkey, | |
| C const * | name, | |||
| C * | buffer, | |||
| size_t & | cchBuffer | |||
| ) |  [inline] | 
Gets the contents of a registry key's string value into a caller-supplied buffer.
| hkey | [in]Handle of the key whose values will be retrieved | |
| name | [in]The name of the value. May beNULLor the empty string to access the key's default value | |
| buffer | [in]Pointer to the caller-allocated buffer into which the value's string result will be written. | |
| cchBuffer | [inout]Specifies the size of thebufferparameter and receives the number of bytes required for the whole value (including the string's nul-terminating character). | 
| ERROR_SUCCESS (==0) | The function completed successfully | |
| any other value | The function failed, and the error code indicates why | 
| const size_t CCH_REG_API_AUTO_BUFFER = 512 | 
Number of characters in internal buffer of auto_buffer used throughout the Registry library.
 1.5.6
 1.5.6