INSTALLED returnes same program multiple times

#1
[C:\Program Files\JPSoft\TCMD21]installed /A /D /U /V
.
returns in part:
.
TweetDeck 2.1.0 Twitter, Inc. 2013-01-11
TweetDeck 2.1.0 Twitter, Inc. 2013-01-11
.
Just wonder why that is please?
 
#2
It's only doing what Windows tells it. I can't say how it happens, but some products (only TCCLE v14 here) get multiple "Product" entries in the registry (see below). It also appears twice in the Control Panel's Add/Remove Programs.
upload_2017-6-25_15-36-54.png

upload_2017-6-25_15-39-6.png
 
#3
P.S., It was much worse during the alpha/beta testing. For a while nearly every product appeared twice. That was fixed nicely.

When I have time, I'll investigate those two GUIDs and try to determine which corresponds to my actual installation. Does anyone have any idea how I might tell?
 

rconn

Administrator
Staff member
May 14, 2008
10,494
94
#7
Where in the registry does INSTALLED get it's data?
Software\Classes\Installer\Products
Software\Microsoft\\Windows\\CurrentVersion\Uninstall
Software\Microsoft\\Installer\Products
Software\Microsoft\\Windows\CurrentVersion\Installer\UserData

And subkeys for all the above. X2 for the X86 & X64 registry hives. And some additional Windows APIs. And some WMI calls.

Most often, if you see two entries it's because you have both an x86 and an x64 registry setting.
 
#10
I get a list of 105 products like this.
Code:
wmiquery /a . "select Name from Win32_Product"
There are 101 in Software\Classes\Installer\Products.

INSTALLED (and ControlPanel) show 86. How do you decide which ones to show/not show?
 
#12
I get a list of 105 products like this.
Code:
wmiquery /a . "select Name from Win32_Product"
There are 101 in Software\Classes\Installer\Products.

INSTALLED (and ControlPanel) show 86. How do you decide which ones to show/not show?
Is there a similar Win64_Product for x64 systems? Also weird that the same wmiquery only lists Tweetdeck once..... And some others are duplicated....
 
#13
Is there a similar Win64_Product for x64 systems? Also weird that the same wmiquery only lists Tweetdeck once..... And some others are duplicated....
I get no duplicates from WMIQUERY. And a little research told me that the only products that get into the Win32_Product class are those installed via an MSI file. That seems to be also true of what's in HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products. I don't know if the class has a different name in x64. Perhaps there's a different namespace for 32-bit info on x64 (???). If your system has WMIC.EXE you might play with it.

You might be able to list the WMI classes available with a script like this: CLASSES.VBS
Code:
strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colClasses = objWMIService.SubclassesOf()

For Each objClass In colClasses
    WScript.Echo objClass.Path_.Path
Next
and the command
Code:
cscript classes.vbs