Add Remove Programs

Let we start with just a simple script that will retrieve all the software that has been installed on the computer.

$arr = @()
$reg = @()
$reg = Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall
$reg += Get-ChildItem HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

$reg |%{
      $tmp = Get-ItemProperty $_.pspath      
      $arr += "$($tmp.DisplayName)  $($tmp.DisplayVersion)"
}
cls
$arr | Sort-Object | Select -uniq