I have an assembly whose Win32 file version is higher than the one I have installed. The Assembly versions are still the same. If I use Gacutil I can install the new version over my previous version since the FileVersion is higher. However MSI doesnot go by the File Version, they go by the AssemblyVersion. Since the AssemblyVersion are still the same, they don;t install over the old one. I found an article on Microsoft site which says this is possible. Here is the link :
http://msdn.microsof...deexecution.asp
Can anyone let me know How can I specify the Win32 file version on Assembly table?
This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.

Win32 File Version and Assembly Version
Started by
csoprasanna
, May 05 2004 00:07
1 reply to this topic
Posted 06 May 2004 - 17:22
I found the solution to this problem:
If I set the FileVersion to the WIN32 File Version on the MsiAssemblyName
table then MSI will replace the Assembly on the GAC even though they have the
same Assembly Version. I did a test and it seems to work.
You need to set the FileVersion attribute to the Win32 File version of the assembly.
Here is how my MsiAssemblyName table looks:
Component1 Name MyComponent
Component1 Version 1.0.0.0
Component1 PublicKeyToken abcdefghijkl
Component1 FileVersion 100.0.0.0
Component1 Culture neutral
If I set the FileVersion to the WIN32 File Version on the MsiAssemblyName
table then MSI will replace the Assembly on the GAC even though they have the
same Assembly Version. I did a test and it seems to work.
You need to set the FileVersion attribute to the Win32 File version of the assembly.
Here is how my MsiAssemblyName table looks:
Component1 Name MyComponent
Component1 Version 1.0.0.0
Component1 PublicKeyToken abcdefghijkl
Component1 FileVersion 100.0.0.0
Component1 Culture neutral