This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: How does IS determine if a file is "newer" ?
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Oct 12, 2009
02:43 PM
How does IS determine if a file is "newer" ?
I'm having some issues with installing a newer version of my stuff, and it not copying the new files to replace the old ones.
Basically my installer delivers a bunch of driver files to \Program Files\company\product\Drivers then through custom actions install the drivers. When I tried to install a later version only 2 of the 5 driver.sys files were updated with the new versions. All the new files had different md5 sums, different timestamps. One thing I did notice is that if you right-click->Properties->Details on the drivers, the 3 that didn't change have a file version (which is the same) and the 2 that got updated didn't have any file version.
In my Basic MSI project each driver is its own component, containing 2 files: the .sys & the .inf, with the .sys file being the key file. Is that the correct way to do it ?
On a related note, I need to run one custom action for a certain component on a new install, and a different one on an update. On the update case I used the condition 'Installed AND (Not "REMOVE=ALL")' but it doesn't run. What should I use for a condition here ?
Appreciate any help you can offer.
Thanks,
Drew
Basically my installer delivers a bunch of driver files to \Program Files\company\product\Drivers then through custom actions install the drivers. When I tried to install a later version only 2 of the 5 driver.sys files were updated with the new versions. All the new files had different md5 sums, different timestamps. One thing I did notice is that if you right-click->Properties->Details on the drivers, the 3 that didn't change have a file version (which is the same) and the 2 that got updated didn't have any file version.
In my Basic MSI project each driver is its own component, containing 2 files: the .sys & the .inf, with the .sys file being the key file. Is that the correct way to do it ?
On a related note, I need to run one custom action for a certain component on a new install, and a different one on an update. On the update case I used the condition 'Installed AND (Not "REMOVE=ALL")' but it doesn't run. What should I use for a condition here ?
Appreciate any help you can offer.
Thanks,
Drew
(1) Reply
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Oct 16, 2009
04:07 PM
For a better understanding of how Windows Installer handles files during an update, please see this Microsoft help topic:
http://msdn.microsoft.com/en-us/library/aa368599%28VS.85%29.aspx
The versioned files have not been updated because the file version has not changed. The unversioned files have been updated because the the file time/date and file hash have changed. You should be able to see this information if you generate a verbose installation log during your update. Look for the file names in the log and you will find an explanation of what it is doing (usually).
If you are doing a major upgrade for your update you can use the UPGRADINGPRODUCTCODE property for your condition on the custom action.
http://msdn.microsoft.com/en-us/library/aa368599%28VS.85%29.aspx
The versioned files have not been updated because the file version has not changed. The unversioned files have been updated because the the file time/date and file hash have changed. You should be able to see this information if you generate a verbose installation log during your update. Look for the file names in the log and you will find an explanation of what it is doing (usually).
If you are doing a major upgrade for your update you can use the UPGRADINGPRODUCTCODE property for your condition on the custom action.
(If my reply answers a question you have raised, please click "ACCEPT AS SOLUTION".)