MSI Healing Conflict

Where can I find a list of the primary keys for eaching componets and any entry points for a package with relation to Healing.

I have a package that starts its healing process when a certain type of PDF is opened. The problem is that when it runs it appears to be breaking Acrobat and stoping it from loading a certain type of PDF (just a selcted few that don't work). Anyway what I am trying to track down is why this package is trying to heal itself and what is triggering the heal. I have looked at the package and there are no merge modules or HKCU Keys that are assosiacted with the Acrobat package, and therefore don't understand why it is attempting to heal when these PDF's are opened.

0 Comments   [ + ] Show comments

Answers (2)

Posted by: AngelD 14 years ago
Red Belt
When a self-heal occur it will be logged in the event log (application). This will state product GUID, Feature, Component GUID and the (component) resource (keypath).

Here is a script that take a ComponentId (the component guid) and output each product containing this component:
Option Explicit

Dim ComponentId, ProductCode
ComponentId = "<ComponentId>" 'ex, {A2C7CA20-43B3-4E1D-8AFB-5F091E7A4839}

Dim Installer: Set Installer = CreateObject("WindowsInstaller.Installer")
For Each ProductCode In Installer.ComponentClients (ComponentId)
WScript.Echo Installer.ProductInfo(ProductCode, "ProductName")
WScript.Echo Installer.ProductInfo(ProductCode, "LocalPackage")
WScript.Echo ""
Posted by: AngelD 14 years ago
Red Belt
File associations can also be stored in the Extension + Verb table. When using these tables instead of the Registry table an entry point can trigger a self-heal/repair when double-clicking on a file with that extension.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ