Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I once saw a guy run a command and got a list of all installed applications on his computer. How do I do this?

I would like a list of my currently installed applications. I believe he used WSH somehow.

share|improve this question

migrated from stackoverflow.com Nov 10 '09 at 19:10

This question came from our site for professional and enthusiast programmers.

add comment

7 Answers

If you use Windows Vista or Windows 7 and you didn't want install additional software, you can:

  1. Open a command-line window (Windows + R, CMD.EXE)
  2. Type wmic (Enter)
  3. Type product get name (Enter)
share|improve this answer
    
+1 There's not much about your machine that WMI can't tell you these days. –  GAThrawn Nov 10 '09 at 20:15
    
Didn't know about this +1 –  MrStatic Nov 10 '09 at 20:39
    
Classy and useful –  Guy Thomas Nov 10 '09 at 21:11
    
here it says that Win32_Product will not give all the information about the installed softwares. That means, it will not list all the softwares. The reason for this is, win32_product queries the MSI database to get the list. But there will be many softwares which will not have a entry in it as they got installed from exe's. In this case querying the uninstall registry key gives information about these softwares. –  Hemal Pandya Jun 25 '12 at 18:40
add comment

PsInfo from Microsoft/Sysinternals can list all the installed software if you use the -s flag when you run it. You can also use -c to output it as a csv file to use in Excel for example.

C:\> psinfo -s > software.txt
C:\> psinfo -s -c > software.csv
share|improve this answer
    
also works unter Win XP in contrast to WMI solution –  Gerd Klima Nov 10 '09 at 20:56
add comment

PowerShell script to list them:

$loc = Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall

$names = $loc |foreach-object {Get-ItemProperty $_.PsPath}

foreach ($name in $names)
{
Write-Host $name.Displayname
}

Not exactly command line, but for this purpose I personally use CCleaner's uninstall tool, you can export the list of installed software to a text file:

alt text

share|improve this answer
1  
+1 for CCleaner. –  JMD Nov 10 '09 at 19:40
add comment

Not exactly command line either, but trusty old SIW will do the job as well. highlight Applications, right click > Export To > CSV, HTML, TXT or XML

alt text

SIW is freeware and portable, no installation required.

share|improve this answer
add comment

Powershell for great justice!

Creates a nice Excel Sheet as well.

share|improve this answer
add comment

The CCleaner solution above seems like a decent way to go about it, unless you're determined to use the command-line. I've used CCleaner before, it's a good tool But don't assume that everything is registered in the Add/Remove Programs applet (the same list). There are plenty of apps that use xcopy-style installation, i.e. simply unzip this archive and run. Those will not show up in the list.

share|improve this answer
add comment

There is a portable application called Showmysoft. It will show the installed software on the local machine and remote machines and can export to PDF and to CSV. Installation is not required. Download from http://spidersoft.in/showmysoft/.

The minimum system requirement is Microsoft .NET Framework 2.0.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.