/build/static/layout/Breadcrumb_cap_w.png

Common Files deployed by different installs

I have a scenario where I have to deploy files to the GAC for one install and another install that places these files in the file system (for our SDK users). We currently have an MSI Install created in InstallShield that places the Assemblies into the GAC but for business reasons we are not allowing this install to place these files in the Files system.

Is there any reason to worry about placing the same files in different locations by using different installs? I am against this idea, but don't have enough reasons to back it up.

I thought of calling the "GAC Install" as a prereq of the one MSI installer that needs it and passing it properties that will change the install dir of the files, but sit with the problem of these files remaining on the machine when you uninstall (which is a big concern on a silent uninstall!).

0 Comments   [ + ] Show comments

Answers (7)

Posted by: kiptek 15 years ago
Second Degree Green Belt
0
what happens when you pass it the INSTALLDIR property from the commandline with the location you want the files redirected to?
Posted by: Ray_Portrait 15 years ago
Yellow Belt
0
ah, this is where the fun starts. If you set the Component to install to INSTALLDIR, which is set as TARGETDIR and build the msm file, include it into your project and try to overwrite the install location, you dont get GlobalAssemblyCache as an option. if you manually type this in then the file doesn't make it into the GAC. I tried editing the TARGETDIR location directly in the Directory table but this was unsuccessful
Posted by: kiptek 15 years ago
Second Degree Green Belt
0
are you building the merge module yourself or is this provided to you? In looking @ the details of the msm, what are the destination directories contained therein for the files?

please do not edit the TARGETDIR property to try and change the installation directories as this should be resolved by settings in your directory table relative to the SourceDir property. By default, it will probably reference your ROOTDRIVE property & manipulating the INSTALLDIR property should suffice. unless of course it is absolutely necessary e.g. with a multidrive install.
Posted by: Ray_Portrait 15 years ago
Yellow Belt
0
the MM in question is one that I have just whipped up. Yes, agreed - messing with the TARGETDIR was not clever nor was it smart.

I basically want the ability to use the MM to deploy files to either the GAC or to the file system. MM was the closest to the things that we tried, but unfortunately you can't overwrite the MM's TARGETDIR from the calling install to deploy to GAC (I am assuming that it is preventing install time errors in the cases where you are trying to deploy files to the GAC that shouldn't be there).

We basically have a set of files installed by 2 projects that go to different places (yuk) and MM seemed to give the most control over situations like this!
Posted by: kiptek 15 years ago
Second Degree Green Belt
0
======================
Edited - too quick to the trigger
======================

I would create 2 MSM with the files going to the different destinations then have their install governed by a property e.g. SDK_INSTALL=0/1 to manage the type of install. Don't know if you can do this on a component level or you will have to put them in separate conditioned features.
Posted by: Ray_Portrait 15 years ago
Yellow Belt
0
That's pretty much the route that I have taken. It isn't great that 2 installs will be deploying the files to different places but it is the easier way forward to manage - as long as both installs have the same version of the files we should be ok. The way you have suggested will have to be conditional features as this is where the MMs get included.
Posted by: kiptek 15 years ago
Second Degree Green Belt
0
yep. it would have to be feature level. sometimes we have to make do with an acceptable solution rather than the right one, however much it pains us. Oh well.... [8|]
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ