Pacakging

  • Thread starter Thread starter VJ
  • Start date Start date
V

VJ

Is this right place to ask this Question.. IF not direct me ...

We have four products..i.e 4 executables. All of them share a common DLL. If
all these packages are installed on a machine, I want the common DLL to
uninstall only after the last product is removed.. How do I accomplish
this...

VJ
 
Hi,

Well the current "right" answer is to create a Merge Module with your shared
component, and reference that Merge Module from your other deployment
projects. As long you author the Merge Module properly, Windows Installer
will take care of the reference counting for you.

FWIW, most (if not all) legacy installation programs support reference
counting shared dll's to prevent uninstalling them until each app that uses
the component has been removed.

What tool(s) are you using to package your apps?
 
I am using VS.NET packaging.. But I am not a expert...in creating packages
or such.. so I would like to learn about creating Merge Modules..

VJ
 
Also what about these Interop files created.., do I package them as merge
module?? Our 4 packages share few common COM controls, so we have those
interop DLLs..

VJ
 
Yes, I would think a single Merge Module with both the shared Component and
the Interop files would be the best solution.
 
Hi,

VS.NET makes it really easy. Just create a new "Merge Module Project" under
the Setup & Deployment Projects node in the New Project dialog. Help should
be available there...

Once you've created the Merge Module, you can just add it to your other
Deployment Projects.
 
Thanks Michael for your help. Its really cool MSM concepts.. We created
merge modules based on functionality and sharing between application. Worked
really well.

VJ
 
Back
Top