Solved

I need to change the INSTALLDIR directory in a custom action. I am using Installshield 11.5

Posted on 2006-10-23
5
3,369 Views
Last Modified: 2013-11-14
Hi,
 I am using Installshield 11.5 professional.
I have a project that creates different type of packages. Not all the packages install on the same directory, so I have a 'Custom Action' that changes INSTALLDIR according to the Release Flag variable.
I had no problems so far but no the story is a little bit different.  I had a release flag that was used to create a package and I added another release flag for that package.  The condition used in the custom action "Install UI Condition" was ISReleaseFlags="Runtime".  By leaving that condition now the custom action doesn't work anymore.  I added a subfeature (release flag 'tools') to the main feature (release flag 'Runtime').
I though it was because I added another release flag to that package.  So i tried
   ISReleaseFlags="Runtime" OR ISReleaseFlags="tools"
I also tried
   ISReleaseFlags="Runtime" AND ISReleaseFlags="tools"
None of them work.  I ran the package in debug mode and all the msi is reporting is that the the condition is false.
'MSI (c) (78:60) [15:23:25:836]: Skipping action: SetInstalldir (condition is false)'
I tried to open the package with ORCA and I can see that the Property table has the ISReleaseFlags variable with my 2 release flag, so..
What Am I missing here?  It should work.
Thanks
0
Comment
Question by:atoncelli
  • 2
5 Comments
 
LVL 20

Expert Comment

by:Daniel Van Der Werken
ID: 17793593
Should you be using:

ISReleaseFlags == "Runtime" instead of ISReleaseFlags = "Runtime"?

I think so.
0
 

Author Comment

by:atoncelli
ID: 17795024
I have applied the condition by manual.  I tried just to see what it would do and it doesn't let use it.  It says 'An invalid condition statement was supplied"
Any other suggestions?
0
 
LVL 2

Accepted Solution

by:
numansiddique earned 125 total points
ID: 17896111
There is one installscript API called SeFeatureTarget. You can use this to change the INSTALLDIR value at the run time using the installscript.
You can use this function as SetFeatureTarget("INSTALLDIR","D:\\TEMP");

I am not sure about the function name. You can check the function name or related function in the help.

You can create a  custom action which calls the script file. In the script file you can check for the condition of the flag and set the INSTALLDIR accordingly.
This could be one solution
0
 

Author Comment

by:atoncelli
ID: 18046517
This solution is not Microsoft compliance I think because it requires the creation of a script.  There should be a way to do this from InstallShield.
Thanks anyway for the suggestion.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
This is about my first experience with programming Arduino.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now