The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl extension Parse::Win32Registry.

** 0.30 2007-07-01

Added two new scripts: regfind.pl for searching keys, values, and data
for a search string, and regdiff.pl for comparing two registry files
and displaying the differences. dumpreg.pl renamed to regdump.pl 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
method.

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
documented.

Fixed bugs in the handling of unusual names in the get_subkey method.

Synopsis overhauled.

** 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. Test data for Windows NT registry keys updated with
parent key offsets that would trigger the bug.

Internally, the path to a key is now stored as a list instead of a
string.

** 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.

dumpreg.pl updated to use get_path. The prefix_pattern and
long_prefix_pattern configuration options from Getopt::Long
have been dropped.

The node type check for Windows NT registry keys now accepts 0x00
in addition to 0x20 and 0x2c.

Tests updated to check paths for keys.

** 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.

Tests for the support functions added decode_win32_filetime,
as_iso8601, and hexdump added. Updated the key tests to check
timestamps.

Makefile.pl now installs the dumpreg.pl script.

** 0.22 2006-08-06

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

print_summary now displays 'subkeys' instead of 'keys' to make it
clear what it was referring to.

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.

More comprehensive tests have been added.

Troubleshooting section added to the documentation.

** 0.21 2006-07-30

Checks added after every sysread, and an attempt made to improve the
error messages presented. Internal error messages have been made
distinct from errors generated when parsing invalid data.

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

The use of substr and unpack when parsing new NT keys and values
has been reduced.

Reading REG_DWORD values which are not the expected four bytes in
length no longer results in an exception. Similarly, 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).

The undocumented print_debug methods have been updated and added to.
Win95 keys and values could already dump their on-disk structures; now
WinNT keys and values can dump their on-disk structures, and WinNT
keys can dump their offset lists.

Registry files are now opened using the three-argument version of open.

** 0.20 2006-07-23

Released to CPAN.