#! perl -slw use strict; use Win32::Registry; use Data::Dumper; my $key; $HKEY_LOCAL_MACHINE->Open( "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall", $key ) or die $^E; my @keys; $key->GetKeys( \@keys ); for my $subkey ( @keys ) { $key->Open( $subkey, my $x ) or die $^E; my %vals; $x->GetValues( \%vals ); print Dumper \%vals; }