Skip to content
⌘ NSIS Forum Archive

Custom Page location in script and page skipping

2 posts

McMate#

Custom Page location in script and page skipping

Hello. I have two issues with my script that I have spent a fair amount of time into trying to understand but haven't been able to resolve. I would be grateful if some assistance could be provided.

The first issue relates to custom pages. I have defined MUI_PAGE_CUSTOMFUNCTION_LEAVE with the function 'InstallTypeinserted'. It is supposed to run after MUI_PAGE_COMPONENTS to determine whether to skip NavigateDBLocation or not. The idea is that if $1 had the value of '0' then skip the custom page but if $1 was '1' or '2' then essentially not to skip.

It also became apparent to me that I made a generous error in my understanding of the procedure of page loading. What I mean by that I can't work out why I needed to put MUI_PAGE_CUSTOMFUNCTION_LEAVE where it is. I had thought that it in the script it would be like this:

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "LICENSE AGREEMENT - Records.txt"
!insertmacro MUI_PAGE_COMPONENTS
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE InstallType
Page custom NavigateDBLocation
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH

It seems that I was wrong.

The second issue relates to the page skip itself. In the function InstallType, I have been able to demonstrate that the values shown in the message box do in fact correlate to the radiobutton selection that denotes the type of install in MUI_PAGE_COMPONENTS. The bit that I can't get is how to do the actual page skip.

Please find the essence of the script attached, and many thanks for your help.

Timothy
Afrow UK#
To skip the page call Abort in the custom page's Show function.

Also, to define a custom pre, show or leave function for MUI pages the define must come before not after the page insertion.

Stu