This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Find product GUID for uninstall based on Display Name
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Dec 07, 2007
03:42 PM
Find product GUID for uninstall based on Display Name
The previous version of my product installed a COM+ Application on a server then exported a proxy for the COM+ Application to be installed on client machines. Every time the COM+ Application is exported, it creates an MSI with a different GUID to be installed on client machines, so every one of my customers has a product installed with a different GUID. When installing the new version of my product which no longer requires the proxy, I would like to uninstall the proxy application. I only know the display name of the proxy, not the GUID. UninstallApplication( ) needs the GUID, not the display name. Is there a way that I can determine the GUID from the install name, or is there a way to remove a product based on the display name?
Thank you!
Thank you!
(1) Reply
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Dec 07, 2007
04:51 PM
If there's a fixed, unique component code in there, perhaps you can call MsiEnumClients to match the component code to its product code?
I'm not aware of a single function that maps display names to product codes; MsiEnumProducts followed by MsiGetProductInfo + INSTALLPROPERTY_INSTALLEDPRODUCTNAME, comparing each name to the one you want, might do it.
I'm not aware of a single function that maps display names to product codes; MsiEnumProducts followed by MsiGetProductInfo + INSTALLPROPERTY_INSTALLEDPRODUCTNAME, comparing each name to the one you want, might do it.