IT Support Playbooks / IT Support Guides
Inventory installed software without triggering MSI consistency checks
An application repair ticket needs an accurate product version. Reading uninstall metadata is often more appropriate than querying Win32_Product across the machine.
Environment and inputs: Everyday IT support · Windows PowerShell examples unless specified
Try the diagnostic command
Use the stated shell and platform. Replace sample domains, addresses, services and paths with values from the system you are authorized to support.
Get-ItemProperty 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*', 'HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' -ErrorAction SilentlyContinue | Where-Object DisplayName | Select-Object DisplayName, DisplayVersion, Publisher
How to read the result
This PowerShell example reads common machine-wide uninstall registry locations. Results can omit per-user applications, Store apps and portable software, and missing registry paths are suppressed.
What to do next
Compare the affected product's own About dialog with the inventory entry and approved deployment record. Use the appropriate management system for application types outside these registry paths.
Before you make a change
Avoid Win32_Product for casual inventory because it can initiate Windows Installer checks. Do not edit uninstall registry entries to simulate a repair.