The Suite Project Documentation says:
"When an end user launches the Suite installation, the Suite engine reads the Setup.xml file, loads the SetupUI.dll file, evaluates the conditions that are defined for the Suite and each of its packages, follows the instructions in the Setup.xml file, (if applicable) downloads packages and files that are needed on the target system, runs the packages that need to be run, and cleans up resources."
I created a suite project and added two msi files to it and associated them with one feature each. The package location was set to "Download from the web" and I provided the urls for the packages.
When I build the project, I find that Setup.xml and Setup_UI.xml are created in "Interm" folder while the suite project installer is Created in "DiskImages\Disk1" folder. As per the documentation, setup.exe reads setup.xml, I tried to copy the setup.exe to a different location and Launched it, It works without setup.xml, I even tried to delete setup.xml from the disk and the launched setup.exe, it still works. Does it require setup.xml or the information provided in setup.xml is embedded inside the setup.exe itself?
The reason for asking this is that my packages are stored on a secure server for which the download url is generated dynamically. I cannot provide the static url. So I just want to provide some dummy url and build the project. After build, I would manually update the setup.xml for the url information. This when read by setup.exe should get the correct url location to download the package.
Is it possible to provide setup.xml to setup.exe after updating it or is there any other way to handle the same?
Update Setup.xml for a Suite Project
Posted 17 August 2015 - 05:29
The Suite Project Documentation says:
Posted 17 August 2015 - 05:56
This is only a guess as I have not used suite projects for any production release. Is there a concept of a "Release" in a suite project? If there is, perhaps the release is set to perform some amount of compression or single file output. You might want to make sure it is not compressing the files. From your description, it does seem like the xml files are being streamed into the exe bootstraper.
Another possible thing you could try is when files get added in this way, Installshield usually unzips them to a temporary directory when the exe is running. This is the concept of the SUPPORTDIR path. You might want to look around your windows temp folder while the exe UI is up just to look for your XML file. If its there, you can try to manually change the contents to see if that will change the results.
It may also be possible that this can not be done. Installshield may read in the complete file during the init process and any changes you make to a temp xml file may not ever get read in.
Sorry for not having any definitive paths to follow but these are some things to check.
Posted 17 August 2015 - 07:20
Thanks for your response.
Yes, there is a concept of "Release" in suite project but it does not provide control over how the release is packaged, compression etc as provided by other project types.
I tried checking the temp folder. The installer extracted the files in the temp directory. It also contains setup.xml. You are correct. It reads the complete file during the init process so by the time I open this file, Installer has already read the information from this file. Is there any work around you can think of?
Posted 17 August 2015 - 16:30
I would review the documentation to see if there is a way for you to call a command to have the setup re-read the xml file. Maybe some kind of pre-feature install custom action. You don't mention what version of Installshield you are using in your post. I would highly recommend using 2015. Again, I have not used it for Suite projects but I looked at the release notes and many Suite project features that I asked for (as well as others I'm sure) were implemented. There seems to be a lot of Suite project enhancements. Maybe this is one of them. Are you able to use 2015?