I have a similar issue with InstallShield. We are a major Bank in Australia. We purchased InstallShield-2013 Premier last year.
Our project file is a simple MSI Project file.
For one of the main folders which has around 2500 files, I implemented dynamic linking.
I have also setup the project for "Major Upgrade" and every time I build the project, all relevant codes like product code, upgrade code and package codes are changed from my build script.
My issue is:
I have an a c# assembly version, for example 126.96.36.199 already installed in the target machine.
My new MSI builds the same assembly with a lower version for example 188.8.131.52. (this is because someone on our dev team can accidentally drop a wrong version into the publish folder)
If I run the installer in the target machine, which is setup for Major Upgrade,
The un-install of the existing MSI happens ok.
The install of the new MSI happens ok as well.
But after the Major Upgrade, the above (example) assembly is missing in the target folder. This is due to my new MSI trying to install an older version of the assembly.
I wold have thought "Major Upgrade" will completely un-install previous MSI and will install the new MSI. Which is not true in my case. Any Idea?
To fix the issue,
I tried to setup the "ReInstallMode" property to "amus" text which was indicated my Microsoft Url : http://msdn.microsof...2(v=vs.85).aspx
but this didn't fix the issue. Any Idea?
I don't want to include all 2400 files as components because a new file can be publish to this folder at any time by our build system and the MSI project will fail if I don't add the new file to the project manually. This is the reason I setup
the folder as dynamic linking.
The property for the component I created for the dynamic linking has the "Nerver OverWrite un-ticked. But the issue still persists.
Is there any way I can setup the MSI project so the "Major Upgrade" always overrides all the files in the target folder?
Appreciate your help in resolving the issue