my $hKey; foreach my $path ("SOFTWARE", "SOFTWARE\\Microsoft", "SOFTWARE\\Microsoft\\Microsoft SQL Server", "SOFTWARE\\Microsoft\\Microsoft SQL Server\\Instance Names",) { warn "path = $path\n"; $::HKEY_LOCAL_MACHINE->Open($path, $hKey) or die $^E; my @array; $hKey->GetKeys(\@array); warn join(', ', @array), "\n"; }