Posts

Showing posts with the label Advertising info

Difference Between Self Heal and Repair

Self Heal and Repair are two different concepts in Windows Installer which people many times consider to be the same thing, however there is difference in these two. Self Heal is triggered by advertised shortcuts, or other advertising information in the package which eventually Repairs the application. When the application is launched by advertised shortcut, it checks for all the key paths of the Current Feature , if any of the key paths is missing it will launch Repair. Note that if there are multiple features then it will not check the missing key paths of the other features, but only the feature of which the advertised shortcut is launched. Repair of an MSI can be triggered by Repair button in Add/Remove programs Giving the command line msiexec /f{other option} {MSI name} Self Heal by advertised shortcut or other advertising information. Active setup Once the repair of the package is triggered, even with Self Heal, then the whole of the MSI is reinstalled. Then it does not see tha...

Advertising info

The Darwin Descriptor for COM Advertising is stored as the InProcServer32 registry value. The advertised shortcut's TargetPath is a combination of the ProductCode & Darwin Descriptor + some tags. Open the shortcut using ex. notepad and you'll find the descriptor there. A Darwin Descriptor is an encoded string and when decoded produces a combination of the ProductCode, Feature & ComponentId(s).As the Darwin Descriptor is stored as a "REG_MULTI_SZ" entry it can contain more then one descriptor where other packages may have installed the same component. You should be able to find Darwin Descriptors under the following locations HKCR\CLSID\(clsid)\InprocServer32 HKCR\Installer\AssembliesHKCR\Installer\Components HKCR\Installer\Win32Assemblies HKCR\(progid)\shell\(mycustomname;)\command HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\(sid)\Products\(compressed)\Features(targetpath) Contributor: AngelD (from juice.altris.com)