Hi there,
For a project I need to track all installed third party software updates. All windows updates (KB....) can easily be obtained through CLI, not the third party updates.
Through scaning through registry with regedit I found that all patches can be found in values of HKEY_CLASSES_ROOT\Installer\Patches\xxxxxxxxx\SourceList (PackageName)
I can read all subkeys and values if I know the XXXXX values. But I don't, and I can't manage how.....
This code retrieved the values of a particular subfolder XXXXXXXXXXXXX:
use Win32::Registry; $p = "Installer\\Patches\\18337E8B1B905984CA0D4383B5F025D6\\SourceList +\\Media"; $main::HKEY_CLASSES_ROOT->Open($p, $CurrVer) || die "Open: $!"; $CurrVer->GetValues(\%vals); # get sub keys and value -hash ref foreach $k (keys %vals) { $key = $vals{$k}; print "$$key[0] = $$key[2]\n"; # see below for explanation }
Win32::TieRegistry, the better version of Win32::Registry only gave undef values...... That seems to lie in 64 bits registry
Has somebody a clue how to get all XXXXXXXX values?
In reply to Scanning through Windows registry by gepebril69
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |