Also filters out GUIDs and KBs
$kb = "KB[0-9]{6}.*"
$guid = "\{[0-9a-fA-F]{8}(\-[0-9a-fA-F]{4}){3}\-[0-9a-fA-F]{12}\}"
$names = dir HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall |
select {[io.path]::GetFileName($_.name)}
$names | where {$_ -notmatch "$guid|$kb"}
Shay
http://scriptolog.blogspot.com
> This will list all uninstall applications name
>
> dir HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall |
> foreach {[io.path]::GetFileName($_)}
>
> Shay
> http://scriptolog.blogspot.com
>> My plan is to be able to pull just the names of all the installed
>> programs. I know Win32_Product will get the ones installed by windows
>> installer, but not the ones installed w/o it. I assume i need to
>> start with hklm:Software\Microsft\Windows\CurrentVersion\Uninstall,
>> but i dont know where to go from there. I know i have to somehow
>> parse the Name string, but i'm not sure how.
>>