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

How would merge modules work in this situation?


4 replies to this topic

spdygnlz

spdygnlz
  • Full Members
  • 106 posts

Posted 05 June 2013 - 00:07

I've been tasked with refactoring the installs for several products. I've figured that since many of these products share a set of .dlls, a merge module for these .dlls would be the way to go.  The thing is that each product needs to have these dlls in its own sub folder.  It's been a while since I've done a custom merge module, but if I remember correctly I can specify the destination through a property when I consume the merge module in the msi.  How then does it work if these components have the same component id?  

 

Is this even the right application for merge modules?

 

Thanks in advance.



-- spdygnlz --

VBScab

VBScab
  • Full Members
  • 436 posts

Posted 07 June 2013 - 10:21

My solution would be pragmatic: put the DLLs into %SystemRoot%\System32.


- Don't know why 'x' happened? Want to know why 'y' happened? ProcMon will tell you.
- Try using http://www.google.com before posting.
- I answer questions only via forums. Please appreciate the time I give here and don't send me personal emails.

spdygnlz

spdygnlz
  • Full Members
  • 106 posts

Posted 07 June 2013 - 18:52

Perhaps I needed to elaborate a bit.  The files that I'm deploying are .NET files and therefore placing them in the System32 dir wouldn't work.  System32 isn't in the probing path so the dependencies wouldn't be found.  We want to avoid the GAC as well and go for local copies.

 

So my question still stands, are merge modules a good fit for this scenario?



-- spdygnlz --

Florian Haupt

Florian Haupt
  • Full Members
  • 11 posts

Posted 10 June 2013 - 14:36

In such a situation we typically use the AppPath in the registry, to tell the programs where they can find their DLL-files and install all DLL-files into a subfolder of the CommonFilesFolder. If you set up these AppPath values with your program, then I think the merge module is not a bad idea. The System32 folder is not a good idea I think.

If you really want to keep the DLL-files in a subfolder of the program, you can also use a merge module, but be sure that there are no uncompatible versions of the DLL-files.I do not know any problems with using merge modules for this.



Mayank

Mayank
  • Full Members
  • 16 posts

Posted 30 August 2013 - 11:56

you can use configurable merge modules. the properties can be modified when products teams are merging your modules.

http://msdn.microsof...7(v=vs.85).aspx