cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ch029448
Level 4

Setup Prereq Custom Actions

I am a user jumping from a very old version of Installshield to Installshield 2008.

BTW - I am launching third party MSIs as part of my Setup Prerequisites (dot net 2.0, SQL CE 3.5, and Adobe Reader 8.1) from within my setup, just in case that background info is pertinent to my question.

My question(s) are in regards to the Setup Prerequisites. Can I add custom actions to my Setup Prerequisites - perhaps some Installscript to be run during the setup prereqs? For example, can I have my setup abort if a user chooses not to install one of my prereqs if I have detected the target machine requires that prereq (I do not see where that is configurable from within the Prerequisite Editor). Can I create OR conditions for my setup prerequisite? For example, I want to check wether or not the target machine has Adobe Reader 7.0 or greater. There is no Adobe registry VALUE that holds the number value 7.0 so I can not use the "greater than" option in the editor, but rather a registry key NAMED "7.0" - what if I want to check for "7.0" OR "8.0"? These are specific questions regarding my specific prereqs, but overall, my question is how, if at all, can I add custom/scripted action to my setup prerequisites?
Labels (1)
0 Kudos
(6) Replies
MichaelU
Level 12 Flexeran
Level 12 Flexeran

Setup prerequisites are their own island launched by your setup, but otherwise disconnected. It's not possible to, for example, schedule a custom action from your main setup as part of a prerequisite's install. However if you have control over the prerequisite itself, you can put the customizations inside it. Then the only issue becomes one of communicating the failure back to the main setup.

As for the conditions, while there is no direct way to write an OR, some OR conditions can be rewritten as AND conditions. For instance you might specify to install version 8 if the version 8 registry key is NOT present AND the version 7 registry key is NOT present. Then either one being present would cause the prerequisite to be skipped.
0 Kudos
ch029448
Level 4

Thank you very much for your reply Michael. The information was useful and much appreciated.

Any advice on how to abort the entire install if my user chooses not to install one of my "optional" prereqs (this is a philosophical choice on my part - I don't want to force any 3rd party software, whether it's required by my app or not, on my users without their approval) ???

Thanks again,

Chris

I want to add, very quickly, reading through this forum I am extraordinarily impressed with the feedback from Macrovision engineers on this forum. "Professional Services" on a public/free forum is always greatly appreciated by I.T. Professionals. I sincerely hope, as the number of users and sheer size of this forum grows, Macrovision Support Engineers do not abandon this practice. Thanks guys!!!
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

In general I would say your desires are handled by the list of prerequisites being shown before the user clicks install. Before clicking Install, the entire list is optional at the cost that the product will not be installed if they click Cancel. Once the user has clicked Install, the extra layer of an "optional" prerequisite allows them to skip certain prerequisites which are not required by your product. Furthermore, if you install prerequisites with full UI, many of their installations will have the opportunity to cancel again, resulting in us detecting a failure to install. So long as they were marked as required, we will treat by aborting.

Does this get you where you want to be? We do not have any behavior which allows you to put up an "optional" dialog, but then effectively change your mind to require it if the user says no.
0 Kudos
ch029448
Level 4

Hi Michael. Thanks for your help on the Installshield 2008 forum.

Perhaps if I give you an overall view of what I'm trying to accomplish, you might be able to push me in the right direction.

I have my app that required .NET 2.0 framework, SQL CE 3.5, and Adobe Reader 8.1 to function.

Given that my redistributables for .NET and SQLCE are MSIs, I can not launch my installation as an MSI (because we can not invoke multiple MSIs simultaneously), so my installation with the setup prereqs is launched via setup.exe.

My main goals, as they pertain to setup prerequisites are:
a) abort my installation altogether if my user chooses not to install any one of my setup prerequisites
b) check and display some disk space requirements PRIOR to my setup prerequisites being invoked and stop the installation right then and there if there is not enough disk space.

In sum, the basic flow of my install should be (assume any negative answers to IF conditions abort the install)

Check for disk space
if enough disk space then
prompt user to install .NET2.0 (setup prereq)
prompt user to install SQL CE (setup prereq)
prompt user to install Adobe Reader 8.1 (setup prereq)
prompt user to install My App
Reboot
0 Kudos
ch029448
Level 4

Within a Basic MSI, can I do ANYTHING prior to the invocation of setup prereqs? I would like to check/display disk space (and abort the install if applicable) before any setup prereqs are invoked.
0 Kudos
blitz89
Level 3

Did you ever solve your problem in the manner you describe? I am in the same situation in which I want to force the .NET 2.0 and Adobe 8.0 install in my applications install
0 Kudos