I would like to include the following for each:
Features: (I am not as concerned about including the features, but it would be nice to have). List of all features, the feature install state and possibly a list of components for each feature.
Components: A list of all components, the component install state and fully qualified destination path, a list of files in the component including the file date and time, size and version, a list of registry entries in the component and a list of shortcuts in the component.
This information will be used in a "System Information" type utility that our Tech Support department would use to help them troubleshoot customer issues. I also thought this manifest could be used to quickly and easily document all the files, registry entries and shortcuts installed by a particular build of our installation(s).
Has anyone done something similar or have any suggesstions on how this could be accomplished?
One idea I had is to parse the MSI log file. This appears to be a daunting task and I am not sure that I could guarantee it would be available.
Another is to parse the DevStudio 9 build log file. The con to this is that I would not be able to get registry or shortcut information or the fully qualified destination path for the component.
The last idea is to query the MSI database directly. I could do this at runtime and probably get all the information I need. However, I wasn't sure if I would be able to easily get the components fully qualified destination path with the way the directory table is designed. I also wasn't sure if I would have to do a seperate query for merge modules included in the installation.
I would appreciate any additional suggestions, advice, or personal experience anyone has to offer.
Thanks,
Shane Jimmerson
Edited by sjimmerson, 20 January 2004 - 22:05.