PDA

View Full Version : Use InstallShield Automation to change Directory table values?



Ron Schaeffer
11-01-2010, 12:34 PM
Is it possible to use the InstallShield Automation interface, accessing an XML format ISM file, so as to revise in the Directory table the directory name of a node (i.e., set the value in the DefaultDir column of the table)?

In other words, my directory table looks something like this:

Directory Directory_Parent DefaultDir
MYCOMPANY ProgramFilesFolder MYCOMP~1|MyCompany
VERSIONDIR MYCOMPANY 3.0

In a build preprocessing step, I would like to be able to set the 'directory value' of VERSIONDIR to a product/build specific version (i.e., 3.1, 4.0, etc.).

Alternately (though I don't want to do it this way), is it possible to do this using the Windows Installer automation interface if the ISM file is in a binary format - does the Windows Installer interface have the ability to set the 'defaultdir' in the Directory table?

Thanks

Ron Schaeffer
11-06-2010, 08:51 PM
Anyone? Modify a directory table entry using InstallShield Automation?

Alright, if not - does anyone know if the XML format ISM file is truly XML format - such that it could be processed using XMLDOM to find the particular directory table entry and update the associated value?

Has anyone written any XMLDOM for processing an ISM file - anything at all (I'd love to see that!)??

Thanks

troyab
06-06-2012, 04:16 PM
Was an solution ever found for this?

Ron Schaeffer
06-06-2012, 10:27 PM
I've never had a response, nor figured out a way to do it (though I don't recollect investing any more time in it - too many other things to do).

I basically worked around it by having VERSIONDIR as a root folder in the installer, then using a Directory Custom Action to set VERSIONDIR at runtime to "[INSTALLDIR][VERSION]" - where VERSION = '3.0'. (FYI - I had the "3.0" value available as property VERSION in the installer, which I set in my preprocessing of the ISM file)