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.
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)
Please log in to answer
Posted by:
AngelD
18 years ago
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 ""
Next
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 ""
Next
Posted by:
AngelD
18 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.