Novell Home

Troubleshooting Applications that Re-Launch MSI Installations

Novell Cool Solutions: Trench
By Bryan Berns

Digg This - Slashdot This

Posted: 18 Feb 2002
 

Current Version: ZENworks for Desktops 3.2

Many new applications will incorporate MSI installs. When the applications cannot be installed with an applications object (because of custom settings), then it is still more convenient to snapshot the changes.

Due to the 'advancements' in MSI based installations and Windows, I found that some installs will re-launch the setup program when the program launches if it finds everything isn't just how it should be (or it at least thinks everything isn't just how it should be).

For restricted users this can be a problem launching the application, and for those with rights, it may just be flat-out annoying. To fix this problem, it turns out all you have to do is eliminate some registry values.

In the typical MSI install, values will be written to two registry installer locations:

HKLM\Software\Microsoft\Windows\CurrentVersion\Installer

and

HKLM\Software\Classes\Installer

The idea behind this is that other 'Classes' have static links to these installer directories. They reference it by a special GUID, a 32-character hexidemical number. The easiest way to think of it is, for example, each {GUID} under HKLM\Software\Classes\Installer\Components is sort of a queue of things to check for.

Unfortunately, it is necessary that this GUID exist (for most applications). If it is deleted, the application will most likely not function.

The solution is to delete ALL non-key values under these two keys. Thus, when an application queries these keys, it'll respond as 'Checked And Verified: Done' and never with a message like 'Something's wrong, re-launch Application Setup'. Assuming you took the snapshot correctly, it should never have to relaunch the setup program.

Moreover, non-key values refers to all STRINGS, MULTI-STRINGS, and DWORDS. In ConsoleOne / NWAdmin, the key should look like an empty directory structure when you're finshed.

Another benefit of this is since setup no longer should be launched, you can most likely delete registered backup MSI's that applications install to the local machine. I found an application in which 50% of the files it was installing were actually .MSI files for backup.

In the last application I installed, it took me 15 minutes to clear out those entries. This inspired me to make

msiregdel.exe

This will delete all non-key values under the installer keys from a .AXT.

If you have any questions you may contact Bryan at berns@uwalumni.com


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell