AutoDesk 2009 - vendor MSI's break each other
I am having an issue with deploying AutoDesk 2009 and I am stumped.
I have used the vendor supplied packaging tool to create the MSI's for deployment. Individually the MSI's work great, but there are 4 for the entire package.
In our environment we use DS to copy all installation files to a local cache. Then I use DS to execute installation scripts.
Problem 1 - The vendor MSI's install several pre-requisites (DirectX 9c, MSXML parser, .NET, etc) A couple of these installs throw out an error code. These error codes stop the job. These CANNOT be removed from the MSI's as far as I can tell. The tool does not let you and I tried editing the MSI with Orca and Wise Studio to no avail. I also tried editing some of the .ini files without much success.
The error codes are basically the small installers passing an error that the product or a higher version is already installed. They exit fine and continue to the next job, but that error code kills the DS job. I tried removing the offending products before each MSI runs but that did not work. Each of the 4 MSI's install all of the pre-reqs (really annoying). The only way I could get around it was just to add the error code to the DS job and set it to continue. But, this brings me to problem 2.
Problem 2 - If I capture the error code and continue the installers overlap each other and the whole job fails again. I put them in seperate scripts, seperate jobs even and it still happens. I thought about putting delays in, but some of the installs can take several minutes.
I tried Start /wait like this:
Start /wait setup.exe /i custom.ini
which works to an extent, but the setup.exe process only lasts a little bit, then it calls each of the pre-req installers seperately and then msiexec for the main install. So right back to the same problem, the job just continues to the next one and the installers error out trying to run simultaneously.
I'm out of ideas now. I have been trying to find a way that I can check for a process with a DOS script but other then Start /wait I don't see anything. I think its possible with VB script or Java but I am not well versed enough to do that off the top of my head and have had no time to research into that. Otherwise, right now my only way to automate this deployment is to split it into seperate jobs and schedule each 30-40 mins apart.
Any ideas?