Thursday, January 29, 2009

InstallAnywhere global registry

Unlike InstallShield InstallAnywhere maintains its product information in a xml file (.com.zerog.registry.xml) as compared to the vpd.properties file created by Install Shield.

Some times it becomes tough for the end user or project author to get rid of a corrupt installation or uninstallation.

.com.zerog.regostry.xml file contains product name, version, UUID and description apart from the components and DIM registration information. This is typically useful if you have to identify a IA installation from a different framework say Install Shield.

This file is stored in /var directory or user on the UNIX machine if the installation is done by the root user else the file is stored in the home folder of the user.

In case of windows the file gets created under windows home drive (c: or d:)

A case study and its remedy

Q My installer/uninstaller did not run successfully! Can not proceed with a fresh installation

Ans- Remove/rename the global registry file and try running the installer/uninstaller

Q Needs to identify the components installed by the installer or need to find which components were removed by the uninstaller

Ans- Check the xml file it will contain the component information, the file in itself is self explanatory in nature.

Q. By mistake I have removed the global registry file but installation is intact, will by uninstallation work properly?

Ans- Yes absolutely, if the uninstaller does not find the global registry file it will look for the file at $USER_INSTALL_DIR$/Uninstall_$PRODUCT_NAME$/.com.zerog.registry.xml file it contains all the information about that individual installation.

So conclude with the global registry file can help the user to manipulate the installation or uninstallation in a desired manner and is sometimes very helpful in recovering the product instance after a corrupt installation