Revision history for Perl extension Parse::Win32Registry.

** 0.41 2008-12-14

Added the new get_class_name function for Windows NT registry keys.
Added the script to demonstrate finding keys that
have class names, and updated to display the timestamp
and class names of keys in additional columns.

** 0.40 2008-09-28

Added new scripts: for exporting keys and values using
the Windows Registry Editor Version 5.00 format, for
dumping all the entries in a registry file, for providing
basic statistics, for listing keys and values in date
order, for dumping a registry file as an intended tree, and, a GTK+ Registry Viewer. Updated and
to provide new options.

Changed parse errors to generate warnings instead of croaking.
Documented this in the Handling Invalid Data section.

The get_data method of Value objects now handles REG_MULTI_SZ data by
returning a list of its elements in an array context, and a string in
a scalar context. The output of get_data_as_string is unaffected.

Added new Registry object methods: get_virtual_root_key,
get_timestamp, get_timestamp_as_string, and get_embedded_filename.

Added new Key object methods: as_regedit_export, get_parent, and

Added new Value object methods: as_regedit_export, and get_raw_data.

Added the get_next_entry and move_to_first_entry methods to the
Registry object for iterating through all the entries in a registry
file. Added the Entry object class as a generic object to represent
these entries.

Added the methods parse_info and as_hexdump to
Entry, Key, and Value objects.

Support function convert_filetime_to_epoch_time renamed to
unpack_windows_time, added the function unpack_unicode_string, and
documented hexdump.

** 0.30 2007-07-01

Added two new scripts: for searching keys, values, and data
for a search string, and for comparing two registry files
and displaying the differences. renamed to and
command line options simplified.

Introduced the as_string method for Key and Value objects. This is
intended to be a more usable replacement for the print_summary

The get_data_as_string method changed to return REG_DWORD values as a
hexadecimal number followed by its decimal equivalent. Clarified that
REG_DWORD values are returned as unsigned integers.

Support functions convert_filetime_to_epoch_time and iso8601

Fixed bugs handling unusual key names in the get_subkey method.

** 0.25 2006-11-12

Fixed a bug with new WinNT key objects incorrectly setting the offsets
to subkey lists and value lists when the offset to the parent key had
a particular value.

** 0.24 2006-10-29

Key objects now have a get_path method, which returns the path
to that key from the root key of a registry file. Documentation
updated to describe the new method. updated to use get_path. Dropped the prefix_pattern and
long_prefix_pattern configuration options from Getopt::Long.
(which required an unnecessarily recent version of Getopt::Long)

** 0.23 2006-08-13

Key objects now have the get_timestamp and get_timestamp_as_string
methods, although only Windows NT registry keys will return valid
values. print_summary nows also displays the timestamp for Windows NT
registry keys. Documentation updated to reflect this.

Makefile.PL now installs the script.

** 0.22 2006-08-06

Included the script as both a tool for examining
registry files, and as an example.

Offsets that require adjustment by fixed amounts (this applies to
entries in the RGKN block of Windows 95 registry files and to all
entries in the hbin blocks of Windows NT registry files) are now
amended before being stored, rather than at seek time.

Troubleshooting section added to the documentation.

** 0.21 2006-07-30

Checks added after every sysread, and improvements attempted for the
error messages presented. Internal error messages have been made
distinct from parse errors.

The code that looks up the RGDB entry for Win95 keys has been revised
to remove some duplicate code. It's still too long.

Reading REG_DWORD values which are not the expected four bytes in
length no longer results in an exception. get_data now
returns undef for these values instead of failing.

get_data_as_string updated to return (no data) when get_data returns
an empty string, and (invalid data) when get_data returns undef (which
should only occur for invalid REG_DWORD values).

** 0.20 2006-07-23

Released to CPAN.