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