Sysinternals Homepage
Forum Home Forum Home > Windows Discussions > Internals
  New Posts New Posts RSS Feed - Finding all installed programs from the registry
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Finding all installed programs from the registry

 Post Reply Post Reply Page  12>
Author
Message Reverse Sort Order
myknowledge29 View Drop Down
Newbie
Newbie
Avatar

Joined: 25 May 2017
Location: Atlanta
Status: Offline
Points: 1
Post Options Post Options   Thanks (0) Thanks(0)   Quote myknowledge29 Quote  Post ReplyReply Direct Link To This Post Topic: Finding all installed programs from the registry
    Posted: 25 May 2017 at 3:59pm
Hi Team,
Greetings!!!

Has anyone tried this solution?

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 - http://technet.microsoft.com/en-us/library/ee156540.aspx

Win32_Product class - http://msdn.microsoft.com/en-us/library/aa394378%28VS.85%29.aspx

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 - https://stackoverflow.com/questions/2105033/how-to-programmatically-determine-the-installed-version-of-ie-from-a-script.

Following Robert Harvey... Thanks Robert.

Thanks & Regards,
Kamlesh
Kamleshkumar Gujarathi
IF MAN DOES IT BEST..WHAT ELSE OS THERE ?
Back to Top
Broni View Drop Down
Newbie
Newbie


Joined: 16 December 2014
Status: Offline
Points: 1
Post Options Post Options   Thanks (0) Thanks(0)   Quote Broni Quote  Post ReplyReply Direct Link To This Post Posted: 16 December 2014 at 12:01am
There are two more registry keys you need to check:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKEY_CURRENT_USER\Software\Microsoft\Installer\Products


Edited by Broni - 16 December 2014 at 12:04am
Back to Top
iamtechguys View Drop Down
Newbie
Newbie
Avatar

Joined: 05 July 2013
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote iamtechguys Quote  Post ReplyReply Direct Link To This Post Posted: 26 July 2013 at 6:44am
There is a new software found on net to show the installed softwares with version ,no installation required portable GUI Application to show softwares and ca export to PDF and CSV here is the link

http://spidersoft.in
Back to Top
namanjain027 View Drop Down
Newbie
Newbie


Joined: 26 March 2013
Location: India
Status: Offline
Points: 1
Post Options Post Options   Thanks (0) Thanks(0)   Quote namanjain027 Quote  Post ReplyReply Direct Link To This Post Posted: 26 March 2013 at 1:55am
Very helpful answer and this resolved my problem...

Thanks a lot... Smile
Back to Top
Sonal Jain View Drop Down
Newbie
Newbie


Joined: 20 April 2012
Location: Mumbai
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote Sonal Jain Quote  Post ReplyReply Direct Link To This Post Posted: 20 April 2012 at 1:28pm
Hello Chris,

I am following these steps to get the installed softwares list. this is working absolutely fine in window application but when i use the same code  in window service then i found out that  HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall  shows me different no of softwares.

please help me out to get this done.
Sonal Jain
Back to Top
Sonal Jain View Drop Down
Newbie
Newbie


Joined: 20 April 2012
Location: Mumbai
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote Sonal Jain Quote  Post ReplyReply Direct Link To This Post Posted: 20 April 2012 at 11:40am
I have  followed the same given steps in my window application and window service code. In window Application when i use  {HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall} registery it shows 81(total no. of softwares) and i matched those software from the registery its absolutely same

 but when i access the same code in the window service its return  136 softwares which isnot there in the registery. i am not able to understand why this happing.

please help me out to get this done.
Sonal Jain
Back to Top
Drewfus View Drop Down
Groupie
Groupie


Joined: 12 February 2010
Status: Offline
Points: 44
Post Options Post Options   Thanks (0) Thanks(0)   Quote Drewfus Quote  Post ReplyReply Direct Link To This Post Posted: 08 February 2011 at 10:55pm
I requested a similar program on the Utilities Suggestions page.
 
 
Back to Top
hwee View Drop Down
Newbie
Newbie


Joined: 08 February 2011
Location: US
Status: Offline
Points: 1
Post Options Post Options   Thanks (0) Thanks(0)   Quote hwee Quote  Post ReplyReply Direct Link To This Post Posted: 08 February 2011 at 7:20pm

Hi Christ,

I tried your program and it worked great.  However, i was wondering that we can display the GUID (key) of each installed software.  By the way, I was trying to findout the GUID of the the McAfee that is install on the PC.  If you have a minute, could you give me some suggestions?  Thanks

HHH
Back to Top
Chris128 View Drop Down
Groupie
Groupie
Avatar

Joined: 14 August 2009
Location: England
Status: Offline
Points: 79
Post Options Post Options   Thanks (0) Thanks(0)   Quote Chris128 Quote  Post ReplyReply Direct Link To This Post Posted: 15 January 2010 at 7:50pm

Just for anyone interested, I have pretty much finished this program now and it works quite well - on every PC I have tested the latest version on it has detected exactly the same programs that Add/Remove Programs detected (apart from Windows Updates or anything that is only displayed when you tick the Include Updates box in Add/Remove programs, as I am not bothered about detecting them really).

I didnt end up using the Windows APIs mentioned and just did it all myself by looking up various registry keys. I figured out how to convert the GUID name shown in the Uninstall key to a windows installer ID - if you split the original GUID string up into 2 halfs after the second hyphen, in the first half each block is just reversed and in the second section characters are reversed in groups of 2. Here's an example:�

Original String:
{01C5A10F-AD9B-405B-853A-6659841A1242}
Converted String
F01A5C10B9DAB50458A3669548A12124

Its probably easier to see what I mean if I display the strings like this:

Original String:
01C5A10F AD9B 405B 85 3A 66 59 84 1A 12 42
Converted String
F01A5C10 B9DA B504 58 A3 66 95 48 A1 21 24

Anyway, once I had figured that out, I just basically made my app loop through the Uninstall key and for each item, if the WindowsInstaller flag is set, then it converts the GUID name of the current key (as explained above) and then looks in Classes\Installer\Products for that converted string as the name of one of the subkeys. If it finds it then it pulls information from that subkey.

Obviously there is a bit more to it than that but if anyone wants to see exactly how my code works the full source code (and an example application that uses it) is here: http://cjwdev.wordpress.com/2010/01/06/enumerate-installed-programs/

Cheers, Chris



Edited by Chris128 - 12 April 2010 at 2:30pm
Back to Top
Chris128 View Drop Down
Groupie
Groupie
Avatar

Joined: 14 August 2009
Location: England
Status: Offline
Points: 79
Post Options Post Options   Thanks (0) Thanks(0)   Quote Chris128 Quote  Post ReplyReply Direct Link To This Post Posted: 17 December 2009 at 9:03pm
Thanks I found the references to IShellAppManager and IEnumInstalledApps but it seems that there is very little on the internet about these two items (cant remember the last time I did a google search and only got one page of results!) so I dont even know where those APIs are defined, so I cant begin to try and call them from my .NET application :(
Back to Top
 Post Reply Post Reply Page  12>
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 11.06
Copyright ©2001-2016 Web Wiz Ltd.