List Installed Programs from the Registry Uninstall Keys
Enumerate installed software with versions, publishers, and install dates by reading the Uninstall registry key.
01Command
$ Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' |
Where-Object DisplayName |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |
Sort-Object DisplayName02What it does
Every MSI and most installers register an entry under ...\Uninstall, so this key is more complete than Get-Package and scriptable for inventory — including per-user installs under HKCU:\...\Uninstall. On 64-bit Windows, 32-bit programs land under the Wow6432Node subpath, so query both or you will miss roughly half the software. TheQuietUninstallString and UninstallString values also give you silent-uninstall commands for scripting removals.
03Risk
04Undo
✓No undo needed — this command does not change persistent state.
05Sources
- Uninstall Registry KeyEvidence: Documents the Uninstall key's DisplayName, DisplayVersion, and InstallDate values.
Last verified: 2026-09-17 · Category: System & Settings
06Related solutions
Search inside text files and logs with regex, returning file, line number and match.
Create or update a .zip from any files or folder contents straight from PowerShell.
A built-in PowerShell one-liner that answers 'is port 5432/3389/443 actually open through this network?' — no telnet client needed.