I'm using Visual Studio 2010, InstallShield LE on a solution with about 10 total projects.
I've selected the main GUI's primary project output for the 'files' portion, installed to a subdirectory of Program Files, pretty standard.
I built the installer a few weeks ago and installed it on my test machine, everything was working fine. Since then, I've made changes to each project in the solution. Today, I incremented my assembly version and rebuilt my setup project to continue testing.
After installation, in the program files installation directory, I noticed that one of my project's assemblies still lists the previous version, 1.0.0.0, and the file date is over a month old. The other assemblies in the directory show the current versions and current modified date.
I've tried deleting every bin and obj folder in my solution directory and the installer project folder as well. I reinstalled but the problem remains.
I searched google, but as the problem is odd, a good search phrase has been elusive.
Obviously, I need the most current version of my assemblies to be included in the installer msi.
Thanks for any help or suggestions!
You need to do two things: extract the actual file in the MSI to know whether the updated binary is there in the MSI, and get a verbose log of the install looking for what Windows Installer says about the component that contains the assembly in question. Btw, you have each assembly file as the key file of its own component, don't you? Windows Installer only checks for version updates for they paths.
You'll want to read:
Default File Versioning
Note: Make sure you are comparing AssemblyFileVersion. It's not the AssemblyVersion attribute that is important rather the AssemblyFileVersion attribute. The former is used by the GAC and Strong Name contracts while the later maps to the Windows Native FileVersion structure.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With