Here is another useful PowerShellcommand liner to list of all installed software on the machine
Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall | % {Get-ItemProperty $_.PsPath} | where {$_.Displayname -and ($_.Displayname -match ".*")} | sort Displayname | select DisplayName, Publisher
And you should get nice output list with installed software and publisher on the local machine.
Good PowerShell book available :