Page 1 of 1

How are common files handled

Posted: Fri Oct 19, 2012 3:58 am
by steven evans
Hi,
We are looking to replace our existinng installer (wise). We have an number of Net applications using a libary of dlls. The question we have is how will IA cope with having the same file in multiple installers. Will they not be installed if allready present? On unistall will common files remain? How dose IA determin (if at all) a dll (or file) is the same?

Steven Evans

Re: How are common files handled

Posted: Fri Oct 19, 2012 7:57 am
by FrancescoT
Dear Steven,

the "Install File" command permits to define in which way the MSI engine have to handle a particular file or folder.

More precisely the following command paramters can be used;
- Permanent File - the file will be not removed by uninstall
- Never Overwrite - The file will be not installed if already present

The Windows Installer engine behavior is to overwrite files on the target system only if the ones you are copying are newer.
This behavior cannot be changed with the Windows Installer engine.
Similarly, the Native Engine by default will not overwrite files on the target system if the ones you are copying are not newer, however overwrites may be forced by setting the pre-defined variable NATIVE_OVERWRITE_OLDER to TRUE.
However, this should be done carefully, as it may compromise target system integrity and may break other applications.

Hope this helps you.

Regards

Re: How are common files handled

Posted: Fri Oct 19, 2012 9:24 am
by steven evans
I can see How i force files to be kept or removed. What I dont see is a "referance count" mechanisam that will remove a shared dll when all its dependants have been unistalled.

As most of the dlls are put in the gac does this make a differance? We build diffent apps at different times so the files have diffent dates but the version of the dlls used will be the a same.

Re: How are common files handled

Posted: Fri Oct 19, 2012 11:13 am
by FrancescoT
Dear User,

shared dll installation are controlled by "Shared DLL" copy option parameter available with Install Files command.

Regards