Get a specific product code
I have Matlab Runtime Compiler 2015b (32-bit)
installed from their website. I'm writing a WIX
installer which uses this .exe
, and I'd like to check whether the product is already installed on the machine before installing it myself. In WIX
, this can be done by searching for the product code
, or upgrade code
.
The issue however is that I can't seem to find any reference to the install on my computer. It exists under Add/Remove programs, and that's it.
I've tried the following:
Get-WmiObject -Class Win32_Product | Select-Object -Property Name | Sort-Object Name
https://stackoverflow.com/questions/29937568/how-can-i-find-the-product-guid-of-an-installed-msi-setup
Searching through the following registries
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UpgradeCodes
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Solution 1:
Uninstall information exists in two branches of the registry (64 and 32 bit). Because it is a 32bit program you have to check the 32bit part.
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\
https://superuser.com/a/293896/471143