cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ALyner
Level 2

Invoking Install Script Custom Action is very slow

Hallo,
switching between 2 Dialogs takes very long without any information what happens (no hourglass etc.).
We determined the reason in the IS-Script CA’s. For a test we created a script action, setting the property "Test" to value "123".
Switching between the Dialogs needs up to 30 seconds. Set the Property in invoking a custom action without IS-script the second Dialog shows immediately.
Is there a possibility to speed up the initialization of IS-script?
Otherwise we have to step back to IS12 – so how we can downgrade a Project?
Thanks for a clue
Andreas
Labels (1)
0 Kudos
(5) Replies
skubiakiv
Level 3

I'm having the same issue... Using InstallShield 2010 v16 SP1.

I'm working on a basic MSI project and have an InstallScript that saves off six paths to properties so that I can restore the defaults if necessary and a custom action that calls the script.

When I run the CA after clicking NEXT on a form, it takes several seconds (with an hourglass) to bring up the next form. Way too long in my opinion. So... I've found where you can build a custom action that sets a property and if I use this method there is no delay and the form comes up instantly.

I can redo the install to use the CA/SetProperty method, but the script seems much nicer as I can do all six in one custom action.

Any help would be greatly appreciated.

Thanks 🙂
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

There's no need to use a custom action to set properties from your dialogs - just use a control event that sets a property directly (http://msdn.microsoft.com/en-us/library/aa371695(VS.85).aspx).
0 Kudos
skubiakiv
Level 3

MichaelU: Thanks for the input.

I did think about setting the properties directly from the dialog, but I had the old InstallScript saving the default values right after the CostFinalize so that the values were populated before showing any UI. If the forms had a load event, I'd just save the properties when the InstallWelcome is shown; but I'm not aware of one...

So the only way I could save my values before getting to any UI was to do it with a Custom Action and then have those actions run after the CostFinalize. Now I have the default values saved even before showing the InstallWelcome form. And it's quick; not like using the InstallScript.

Now I'm off to go implement the logic to restore the default values at the appropriate time and I'll probably do that directly from the dialog.

Still wish I had an answer to the InstallScript being so slow.
0 Kudos
ALyner
Level 2

MichaelU wrote:
There's no need to use a custom action to set properties from your dialogs - just use a control event that sets a property directly (http://msdn.microsoft.com/en-us/library/aa371695(VS.85).aspx).


Hello,
and thanks for your answer. The Problem is that any call to a script functions is very slow. Setting a Property was just an explanation with a script that doing nearly nothing!!!
So the Question persists….

Ciao
Andreas
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

Last I recall, the engine startup delay was under 2 seconds. You're only likely to have a problem if you run multiple actions on a control event. Try to consolidate your entry points and call just a single action - while 2 seconds isn't great, it's tons better than 10 to 30 seconds.
0 Kudos