Jump to content


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.
Photo

Shared files in 2 installations and keeping them in sync


2 replies to this topic

deramor

deramor
  • Full Members
  • 187 posts

Posted 20 June 2014 - 23:20

Hello-

 

I have 2 files installed to the same location by 2 different installers (shared files).  They are a .Net dll and a .Net exe.  The exe is a UI that implements the dll.  The exe references the dll.

 

Both components are marked as shared.

 

In a situation where both installers are installed on the same system, the shared count would be 2 for both files.

If the dll is updated and thus the version changes, the resulting major upgrade will install the dll.

Except the exe is not upgraded but it needs to be since the .Net exe now binds to a different dll version but its own version did not change.

 

Aside from the obvious answer of changing the exe version whenever the dll is changed (project lead says no to that), is there any way to force only this file to be updated?  I know about companion version files except that using it here would only move the problem around since either file can be updated without the other being as well.  I also know about overriding global version rules but that I don't want to do that.

 

I am also looking into having the exe not bind to the dll but rather to delay load which would work but that may also not fly with the project lead.

 

Thanks in advance.

Rob



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 24 June 2014 - 20:22

"Always overwrite" might be a way, but it would also allow downgrades (last package wins instead of highest version wins)



deramor

deramor
  • Full Members
  • 187 posts

Posted 24 June 2014 - 20:33

Stefan,

I thought of that after I posted this. I think it may come to that. I do not know of a reason the files would get out of sync but I am reluctant to force this install order without exhausting other avenues first. Ideally, I would like to do something with the version numbers or just some kind of .net late binding so that the exe isn't bound to the assembly version and this behavior wouldn't burn me.

In the end, I may just go ahead and use the always overwrite. Thanks for your thoughts of the matter.

Rob