Archive: Skipping pages - how to


Skipping pages - how to
I'd like to run the application setup in Upgrade mode.
This means - simply skipping some pages (like welcome, license and some other custom pages)

one way i figure to do that is to use the pre function (MUI_PAGE_CUSTOMFUNCTION_PRE) for each page I want to skip. This will check if this is an Upgrade mode - and if it so - will call Abort to skip the page.

But I also saw that the Abort instruction can skip number of pages at once.
Calling Abort #
Where: # is a positive number
did not help, and it seems that the parameter actually didn't change a thing.

Any help?

tx


Is this what you want?


what?


You need set some variable or whatever you choose to know to skip the page:

Function PageComponentsPre

${If} $UPGRADE == 1
Abort
${EndIf}

FunctionEnd


Hi redxii,

I know about the Abort in the pre-page function.
The question is how to skip several pages at once
I read some documentation about that - and some indications in other places - but maybe it is not supported any more

tx
Jammusi


Originally posted by jammusi
what?
My post is actually a link :hang:

;) ;)
Well in that case the link goes where.
Is that the right link?


tx mate


I created a custom component page, and depend on the passed in value it will be skipped or not. I am running into an issue where it doesn't skip the custom component page, but the next page (installation page). Anyone has any idea? Thanks!

!define MUI_PAGE_CUSTOMFUNCTION_PRE Skip
Page custom Create Leave

Function Skip

; Skip component page
${If} ${STAND_ALONE} == "Skip"
Abort
${EndIf}

FunctionEnd


I think you can only use MUI_PAGE_CUSTOMFUNCTION_PRE in combination with MUI_PAGE_CUSTOMFUNCTION_SHOW in order to be in effect.

So either you would have to use:


!define MUI_PAGE_CUSTOMFUNCTION_PRE Skip
!define MUI_PAGE_CUSTOMFUNCTION_SHOW Create
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE Leave


Or skip the MUI definition and put your Skip code in your Create function

Page custom Create Leave

Function Create
${If} ${STAND_ALONE} == "Skip"
Abort
${EndIf}
; set up your dialog as usual here
FunctionEnd

Thanks Animaether! I just added the "skip" check at the beginning of Create function, seems to work now.