How to Check Installed Software in Windows 11 Using CMD
Learn step-by-step how to check installed software on Windows 11 using CMD. Use WMIC and registry queries to generate a comprehensive list, export results, and verify with Settings > Apps & Features.
Use CMD to enumerate installed software on Windows 11 by querying both the uninstall registry and the WMIC tool. Start with an admin CMD session and run 'wmic product get name,version' for a quick list, then pull from registry uninstall paths to cover 64-bit and 32-bit apps. Export results for auditing.
How Windows 11 organizes installed software and the two CMD approaches
In Windows 11, installed software can be discovered from two main sources when you use the command line: the Windows Installer database (accessed via WMIC) and the uninstall registry entries. The WMIC path provides a quick snapshot of programs registered with Windows Installer, while querying the uninstall registry keys captures many programs that did not enroll with Windows Installer. For homeowners and DIY enthusiasts using CMD, both methods are valuable: WMIC gives speed, the registry route gives completeness. In practice, you often combine both to produce a robust list you can export for inventory, audits, or troubleshooting. This guide walks you through practical, safe steps to run these commands, interpret the results, and export a clean, readable list. Along the way, you’ll learn how to account for 64-bit and 32-bit installations and how to verify your results against the Apps & features panel in Windows 11.
Understanding the difference between the two sources also helps you decide when to rely on one method or the other. For example, some software installs do not register with Windows Installer and will be missing from WMIC output but appear in the registry. Conversely, some entries in the uninstall registry may be leftovers or entries that were not properly removed. The goal is a dependable, audit-ready list rather than a perfect one-shot dump.
Prerequisites and safety considerations
Before you begin, prepare a few basics to ensure accurate results and avoid common mishaps. Start by opening an elevated Command Prompt or Windows Terminal with CMD privileges; this ensures you can read restricted registry paths used by some software. Have a dedicated folder or desktop location ready to save your exported text files, so you can share or archive the results easily. If you are working on a personal machine, you can run commands with standard user rights, but some entries may be omitted. Avoid editing registry data while you are listing software; stick to read-only queries. Finally, understand that WMIC is deprecated in newer Windows 11 builds, but it remains functional for compatibility. If you plan to do frequent software inventories, consider scripting the steps or using a PowerShell approach in parallel.
Method 1: Using WMIC to list installed software
The Windows Management Instrumentation Command-line (WMIC) provides a straightforward way to enumerate installed software. In an elevated CMD session, type: wmic product get name,version. This returns a two-column list showing each product name and its version, separated by spaces. If you notice blank lines or missing entries, that’s a known limitation of WMIC’s reliance on Windows Installer data. For a slightly broader view, you can filter by names or export only the name column: wmic product get name > installed_list.txt. Remember that WMIC can be slow on systems with many programs, and some programs installed without Windows Installer will not appear in the output. Use this method for a quick baseline inventory, then supplement with registry-based queries for completeness.
Method 2: Registry-based listing (uninstall keys) for comprehensive results
Windows stores uninstall information in registry keys, which includes both 64-bit and 32-bit program entries. To query 64-bit apps, run: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName. To capture 32-bit programs installed on 64-bit Windows, run: reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName. You can append /f DisplayName to search by name: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s /f DisplayName. Collect DisplayName and DisplayVersion values where available. Since this method traverses many registry entries, you will likely see long lists; consider redirecting to a file: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName > uninstall_names.txt. Repeat for DisplayVersion and for two paths. This path often yields more complete coverage, especially for non-Windows-Installer software.
Exporting and combining results for audits
After collecting WMIC and registry data, consolidate outputs into a single file for audit, documentation, or inventory tracking. Use redirection to create text files like: wmic product get name,version > c:\temp\wmic_installed.txt reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName > c:\temp\uninstall_64bit.txt reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName > c:\temp\uninstall_32bit.txt. Then you can merge them manually or with a simple script to produce a master list. If you’re comfortable with the command shell, you can also pipe outputs to sort and unique commands to remove duplicates. Saving to a dedicated folder helps maintain an auditable trail and makes it easier to share results with IT staff or property managers.
Tips for readability: filtering, sorting, and formatting
Once you have raw data, transform it into a readable list. Use sort to alphabetize entries: sort c:\temp\wmic_installed.txt > c:\temp\wmic_sorted.txt. For more precise matching, use findstr to filter results by keywords, such as vendor or software family. If you want a clean two-column table, you can process the text with a simple script or import into a spreadsheet. Consider deduping by only including the latest version per product name, which reduces noise in long lists. Finally, always verify critical apps by cross-referencing with Windows Settings > Apps & Features to ensure you didn’t miss anything important for the audit.
Common pitfalls and how to avoid them
Several issues can skew results: 1) WMIC not listing some apps because they aren’t Windows Installer-based; 2) 32-bit apps installed on 64-bit Windows may live under WOW6432Node; 3) Portable apps that don’t require installation may not appear in either list; 4) Registry entries can linger after uninstallation; 5) The output may include system components or updates that aren’t traditional applications. To mitigate, always collect both WMIC and registry outputs, perform cross-checks, and compare with the Apps & features panel in Settings. Running the REG tool with /s ensures a recursive scan, but you might want to filter to a few key names to keep the result usable. If you see licensing entries or trial versions, mark them separately for procurement reviews.
Quick-start checklist for DIYers
- Open an elevated CMD window. 2) Run 'wmic product get name,version' and save output. 3) Run registry queries for 64-bit and 32-bit uninstall entries and save. 4) Consolidate, sort, and deduplicate. 5) Cross-check with Settings > Apps & Features. 6) Export final master list to a shareable file. 7) Review any missing programs and note portable apps as exceptions. This approach gives a practical, auditable inventory you can rely on when troubleshooting software issues or planning an upgrade.
Tools & Materials
- Windows 11 PC(A working machine with admin access recommended for full registry reads)
- Command Prompt (CMD) or Windows Terminal(Run as Administrator to access restricted registry paths)
- Text editor or log viewer(Used to review or annotate exports)
- Output file path(E.g., C:\Users\YourName\Desktop\installed_software.txt)
- Internet access(Optional for reference guides or updates)
Steps
Estimated time: 25-40 minutes
- 1
Open an elevated CMD session
Right-click Start, choose Command Prompt (Admin) or Windows Terminal (Admin). Elevation is important to access protected registry keys and to ensure you capture entries from all user profiles. If your UAC prompts, allow access.
Tip: If you regularly perform inventories, create a desktop shortcut that launches CMD as administrator. - 2
Run WMIC to get a quick list
At the prompt, type: wmic product get name,version. This provides a fast baseline list of programs registered with Windows Installer. Note that some apps may not appear if they weren’t installed via Windows Installer.
Tip: Redirect output to a file for later review: wmic product get name,version > c:\temp\wmic_installed.txt. - 3
Export WMIC results (optional)
Save the WMIC output to a file so you can share or archive it. Use a path you can access later, and keep the file organized with a descriptive name.
Tip: Use a dedicated folder like C:\temp to keep inventories centralized. - 4
Query 64-bit uninstall registry
To capture most installed programs, query the 64-bit uninstall keys: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName. This pulls DisplayName values from installed software entries.
Tip: If the command returns thousands of lines, filter with /f and redirect the results. - 5
Query 32-bit uninstall registry
Windows stores 32-bit program entries under WOW6432Node. Run reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" /s /v DisplayName to catch those apps.
Tip: Combine with /s to recursively read all subkeys. - 6
Export registry results
Redirect the outputs to text files for later consolidation, e.g., uninstall_64bit.txt and uninstall_32bit.txt. Keeping separate files helps with auditing and cross-checks.
Tip: Use a consistent file naming convention for easy merging later. - 7
Combine and deduplicate results
If possible, merge the WMIC and registry outputs and remove duplicates. A simple approach is to import into a spreadsheet and use unique names per product.
Tip: Focus on the most recent version of each product to reduce noise. - 8
Verify against Settings and Apps & Features
Cross-check your consolidated list with Windows 11’s Settings > Apps > Installed apps. This helps confirm coverage and identify any gaps from portable or non-installer software.
Tip: Flag discrepancies for manual review and possible reinstallation records. - 9
Document and store the final list
Save the master inventory to a shareable, auditable file. Include a timestamp and notes about any exceptions (portable apps, trial software, or leftovers).
Tip: Document the process so others can reproduce the inventory.
Got Questions?
Is administrator access required to list installed software with CMD?
Some queries can run without admin rights, but to access all uninstall entries you should run CMD as administrator. WMIC may also require elevated access on restricted systems.
Admin rights are typically needed to read all uninstall entries; otherwise some programs may be hidden.
Which command lists all installed programs in Windows 11?
WMIC product get name,version provides a quick list, but registry queries cover more programs, including those not installed via Windows Installer.
WMIC gives a fast snapshot, but registry checks give you broader coverage.
Are there privacy or security concerns when listing installed software?
Reading registry keys and listing installed programs is generally safe. Avoid modifying registry data during the process and use read-only queries.
Reading is safe, just don’t edit the registry as you audit.
Why might WMIC not show all programs?
WMIC relies on Windows Installer data; software installed without Windows Installer or via portable installers may not appear. Registry checks can fill gaps.
WMIC may miss apps that aren’t registered with Windows Installer.
How do I export and share the results?
Redirect command output to a text file using > path, then share or archive the file. Keeping a master file simplifies audits.
Export the list to a text file for easy sharing and archiving.
Watch Video
Main Points
- Open an elevated CMD session.
- Run WMIC for a quick baseline list.
- Query both 64-bit and 32-bit uninstall registries for completeness.
- Export outputs to text files for audits.
- Cross-check results with Settings > Apps & Features.

