Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Registry path to find ALL the installed applications

I have a fast question: IS there any other places in the registry but this:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

where I can find the installed applications of a system? I am asking that because for example IExplorer is not in none of those registers. Where else have I to look?? I need ALL the places where a application that is installed can be.

Thanks for your help ;)

like image 289
user1618465 Avatar asked May 09 '13 00:05

user1618465


People also ask

How can I get a list of all programs installed on my computer?

List Installed Programs Using Settings. Press Windows key + I to open Settings and click Apps > Apps & features. Doing so will list all programs installed on your computer, along with the Windows Store apps that came pre-installed.

Where is exe file in registry?

Regedit or regedit.exe is a standard Windows executable file that opens the built-in registry editor. This allows you to view and edit keys and entries in the Windows registry database. The file is located in the Windows directory (typically C:\Windows), you can double-click it to launch the program.

How do I see all installed programs in Windows 10?

When it comes to viewing all installed apps on your Windows 10 PC, there are two options. You can use the Start menu or navigate to Settings > System > Apps & features section to view all installed apps as well as classic desktop programs.


2 Answers

Your most reliable option is probably to use Windows Management Interface (WMI) to enumerate the software installed by Windows Installer.

See Here
Enumerating Installed Software
Win32_Product class

Note that this does not guarantee that Internet Explorer is going to show up there. I think you can safely assume that Internet Explorer is going to be present on every Windows computer currently out there; Microsoft views it as part of the operating system.

You can, however, find out which version of IE is installed.

like image 125
Robert Harvey Avatar answered Sep 22 '22 07:09

Robert Harvey


The paths in the question don't include the apps installed on a user level.

They are in the same location, but under HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE.

So in total:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

But as you can tell, HKEY_CURRENT_USER only applies to the current user.

To access all the users there is the HKEY_USERS registry root, which has a folder for each user.

So instead, you need:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

for each user sid under HKEY_USERS:
  HKEY_USERS\<user sid>\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  HKEY_USERS\<user sid>\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

P.S. If you want to match between a user's SID and its name, you can look in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<user sid> for the key named ProfileImagePath, which should equal C:\Users\<user name>. Not all users have this key, I think these are system users or something which you don't want to touch.

like image 37
assembly_wizard Avatar answered Sep 25 '22 07:09

assembly_wizard