If you’re looking for a complete list, the answer is simple: you don’t. “Scattered and confusing” doesn’t even begin to cover it.
However, if you’ll settle for most of what’s installed on your machine, you can get pretty close.
Become a Patron of Ask Leo! and go ad-free!
There’s no standard
As surprising as this might be, there is no standard way to install an application on a Windows machine. There’s supposed to be, but the reality is that doing it right requires extra and often complex work. Many application vendors simply don’t bother, and do things their own way.
As a result, there’s no central repository of information about what’s on your machine.
Instead, we need to look in a few standard and semi-standard places.
Settings, Apps & features
In Windows Settings, go to the Apps & features page.
Scroll down, and you’ll get a fairly comprehensive list of the applications installed on your machine.
In a perfect world, that list would be enough. But this is far from a perfect world.
Click your Start menu, and you’ll get a long list of installed programs.
Scroll through to view the complete list; be sure to examine any sub-folders that appear as well.
Applications that don’t follow the rules to install properly into Apps & features, above, may install into the Start menu. This is also often where they’ll put their custom uninstall link.
This serves as an additional list of applications installed on your machine.
C:\Program Files and C:\Program Files (x86)
Additional locations to examine are the C:\Program Files and C:\Program Files (x86) folders. These are the folders into which programs are most often installed by default.
Here you’ll see a long list, often sorted by vendor name rather than program name. You may need to look inside sub-folders to get a sense of what applications are present.
There is one “gotcha” with this particular approach: uninstall. Many programs, when uninstalled, leave their subfolders here behind. Normally the folder will be empty, or have very few files.
Run a Windows Command Prompt, and type in “PATH” followed by Return to display the contents of the PATH environment variable.
This is a list of folders on your machine where Windows looks when instructed to run a program. For example, if you launch Notepad, Windows looks through these folders until it finds notepad.exe in C:\Windows\System32, and then runs it.
My PATH list is quite long, and yours will be quite different.
Some application installations like to add things to the PATH, so the list of folders may include additional clues as to what is installed on your machine.
One problem here is that Windows is in the PATH. That means you will find many .EXE files that are not installed programs at all; they’re part of Windows itself.
I need to mention the registry for completeness, but I’d avoid it for this particular problem.
Many installed programs do place information into the registry. However, the better behaved ones will have been found by the steps above, and the others — well, there’s no telling where in the registry they may have placed their information, or even what it might look like.
In reality, a program could be installed anywhere on your hard disk, could place information anywhere in the registry (or not at all), and could store configuration files in your user directory, the Windows directory, or anywhere else it wants.
In short, an installed program doesn’t have to follow any rules at all.
That’s why tools like malware scanners don’t even try to use rules to locate what’s installed on your machine; they simply scan the entire hard disk looking for problems.
Depending on how exhaustive you want to get, the first two or three ideas here — Apps & features, the Start menu, and the Program Files folders — should get you 99% of what you’re looking for.
If you found this article helpful, I'm sure you'll also love Confident Computing! My weekly email newsletter is full of articles that help you solve problems, stay safe, and give you more confidence with technology. Subscribe now and I'll see you there soon,